# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
4854 | cki86201 | Hyper-minimum (IZhO11_hyper) | C++98 | 480 ms | 24536 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<stdio.h>
int inp[4][35][35][35][35];
struct deq{
int p[35],f,r;
void push(int x){
while(f!=r&&p[f-1]>x)f--;
p[f++]=x;
}
void init(){f=r=0;}
inline void pop(int x){if(p[r]==x)r++;}
inline int read(){return p[r];}
}Dq;
int main(){
int i,j,k,l,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)for(j=0;j<n;j++)for(k=0;k<n;k++)for(l=0;l<n;l++)scanf("%d",inp[0][l][i][j]+k);
for(i=0;i<n;i++)for(j=0;j<n;j++)for(k=0;k<n;k++){
Dq.init();
for(l=0;l<m;l++)Dq.push(inp[0][i][j][k][l]);
inp[1][i][j][k][m-1] = Dq.read();
for(l=m;l<n;l++){
Dq.pop(inp[0][i][j][k][l-m]);
Dq.push(inp[0][i][j][k][l]);
inp[1][i][j][k][l] = Dq.read();
}
}
for(i=0;i<n;i++)for(j=0;j<n;j++)for(l=m-1;l<n;l++){
Dq.init();
for(k=0;k<m;k++)Dq.push(inp[1][i][j][k][l]);
inp[2][i][j][m-1][l] = Dq.read();
for(k=m;k<n;k++){
Dq.pop(inp[1][i][j][k-m][l]);
Dq.push(inp[1][i][j][k][l]);
inp[2][i][j][k][l] = Dq.read();
}
}
for(i=0;i<n;i++)for(k=m-1;k<n;k++)for(l=m-1;l<n;l++){
Dq.init();
for(j=0;j<m;j++)Dq.push(inp[2][i][j][k][l]);
inp[3][i][m-1][k][l] = Dq.read();
for(j=m;j<n;j++){
Dq.pop(inp[2][i][j-m][k][l]);
Dq.push(inp[2][i][j][k][l]);
inp[3][i][j][k][l] = Dq.read();
}
}
for(j=m-1;j<n;j++)for(k=m-1;k<n;k++)for(l=m-1;l<n;l++){
Dq.init();
for(i=0;i<m;i++)Dq.push(inp[3][i][j][k][l]);
printf("%d ",Dq.read());
for(i=m;i<n;i++){
Dq.pop(inp[3][i-m][j][k][l]);
Dq.push(inp[3][i][j][k][l]);
printf("%d ",Dq.read());
}
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |