#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; } |