Submission #1315758

#TimeUsernameProblemLanguageResultExecution timeMemory
1315758cosminvixtorGlobal Warming (NOI13_gw)C++20
0 / 40
0 ms416 KiB
#include <iostream> using namespace std; void bubble_sort(int *A,int n) { int i,chair,done; do { done=1; for (i=0;i<n-1;i++) { if (A[i]<A[i+1]) { chair=A[i]; A[i]=A[i+1]; A[i+1]=chair; done=0; } } } while (!done); } void printv(int *A,int n) { for (int i=0;i<n;i++) { printf("%d ",A[i]); } printf("\n"); } int main() { int *L,*T,tidx,pidx,vidx,*V,*P,n,i,j,nr,hp,cnt,islands,maxislands; FILE *fin,*fout; fin=fopen("gw.in","r"); fscanf(fin,"%d",&n); L=(int*)calloc(n,sizeof(int)); T=(int*)calloc(n,sizeof(int)); j=1; fscanf(fin,"%d",L); for (i=1;i<n;i++) { fscanf(fin,"%d",&nr); if (nr!=L[j-1]) L[j++]=nr; } tidx=0; if (L[0]>L[1]) { T[tidx++]=L[0]; } for (i=1;i<n-1;i++) { if (L[i-1]<L[i] && L[i]>L[i+1]) T[tidx++]=L[i]; else if (L[i-1]>L[i] && L[i]<L[i+1]) T[tidx++]=L[i]; } if (L[n-2]<L[n-1]) { T[tidx++]=L[n-1]; } free(L); V=(int*)calloc(tidx/2+1,sizeof(int)); P=(int*)calloc(tidx/2+2,sizeof(int)); vidx=0; pidx=0; for (i=0;i<tidx;i+=2) P[pidx++]=T[i]; for (i=1;i<tidx;i+=2) V[vidx++]=T[i]; free(T); bubble_sort(P,pidx); bubble_sort(V,vidx); //printv(P,pidx); //printv(V,vidx); islands=0; maxislands=0; i=0; j=0; while (i<pidx || j<vidx) { if (P[i]>V[j]) { hp=P[i]; cnt=1; while (P[++i]==hp) cnt++; islands+=cnt; } else { hp=V[j]; cnt=1; while (V[++j]==hp) cnt++; islands-=cnt; } if (islands>maxislands) maxislands=islands; } printf("%d\n",maxislands); }

Compilation message (stderr)

gw.cpp: In function 'int main()':
gw.cpp:30:11: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   30 |     fscanf(fin,"%d",&n);
      |     ~~~~~~^~~~~~~~~~~~~
gw.cpp:34:11: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   34 |     fscanf(fin,"%d",L);
      |     ~~~~~~^~~~~~~~~~~~
gw.cpp:36:15: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   36 |         fscanf(fin,"%d",&nr);
      |         ~~~~~~^~~~~~~~~~~~~~
#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...