#include <cstdlib>
#include <iostream>
#include "krazki.h"
#include "message.h"
typedef long long LL;
int n, m;
int wezly, id;
int r[20000009];
int k[20000009];
int main() {
n=PipeHeight();
m=NumberOfDiscs();
wezly=NumberOfNodes();
id=MyNodeId();
//HoleDiameter(i);
//DiscDiameter(j);
if(id!=0)return 0;
r[1]=HoleDiameter(1);
for(int i=2; i<=n; i++){
r[i]=HoleDiameter(i);
if(r[i]>r[i-1])r[i]=r[i-1];
}
for(int i=1; i<=m; i++)
k[i]=DiscDiameter(i);
int j, i;
for(j=1, i=n; j<=m; j++){
while(k[j]>r[i])i--;
i--;
}i++;
if(i<=0)printf("0");
else printf("%d", i);
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | #include <cstdlib> #include <iostream> #include "krazki.h" #include "message.h" typedef long long LL; int n, m; int wezly, id; int r[20000009]; int k[20000009]; int main() { n=PipeHeight(); m=NumberOfDiscs(); wezly=NumberOfNodes(); id=MyNodeId(); //HoleDiameter(i); //DiscDiameter(j); if(id!=0)return 0; r[1]=HoleDiameter(1); for(int i=2; i<=n; i++){ r[i]=HoleDiameter(i); if(r[i]>r[i-1])r[i]=r[i-1]; } for(int i=1; i<=m; i++) k[i]=DiscDiameter(i); int j, i; for(j=1, i=n; j<=m; j++){ while(k[j]>r[i])i--; i--; }i++; if(i<=0)printf("0"); else printf("%d", i); return 0; } |
English