Submission #297113

#TimeUsernameProblemLanguageResultExecution timeMemory
297113daniel920712Rectangles (IOI19_rect)C++14
27 / 100
895 ms116620 KiB
#include "rect.h" #include <stdio.h> using namespace std; int can1[205][205][205]={0}; int can2[205][205][205]={0}; long long count_rectangles(vector< vector<int> > all) { int N,M,i,j,k,l,m,n,big=0,ok; long long ans=0; N=all.size(); M=all[0].size(); for(i=1;i<N;i++) { for(j=1;j<M;j++) { big=0; for(k=j;k<M-1;k++) { big=max(big,all[i][k]); if(big<all[i][j-1]&&big<all[i][k+1]) can1[i][j][k]=1; can1[i][j][k]+=can1[i-1][j][k]; } } } for(i=1;i<M;i++) { for(j=1;j<N;j++) { big=0; for(k=j;k<N-1;k++) { big=max(big,all[k][i]); if(big<all[j-1][i]&&big<all[k+1][i]) can2[i][j][k]=1; can2[i][j][k]+=can2[i-1][j][k]; } } } for(i=1;i<N-1;i++) { for(j=i;j<N-1;j++) { for(k=1;k<M-1;k++) { for(l=k;l<M-1;l++) { //ok=1; if(can1[j][k][l]-can1[i-1][k][l]==j-i+1&&can2[l][i][j]-can2[k-1][i][j]==l-k+1) ans++; //for(m=i;m<=j;m++) ok=ok&&can1[m][k][l]; //for(m=k;m<=l;m++) ok=ok&&can2[m][i][j]; //if(ok) ans++; } } } } return ans; }

Compilation message (stderr)

rect.cpp: In function 'long long int count_rectangles(std::vector<std::vector<int> >)':
rect.cpp:9:21: warning: unused variable 'm' [-Wunused-variable]
    9 |     int N,M,i,j,k,l,m,n,big=0,ok;
      |                     ^
rect.cpp:9:23: warning: unused variable 'n' [-Wunused-variable]
    9 |     int N,M,i,j,k,l,m,n,big=0,ok;
      |                       ^
rect.cpp:9:31: warning: unused variable 'ok' [-Wunused-variable]
    9 |     int N,M,i,j,k,l,m,n,big=0,ok;
      |                               ^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...