Submission #127725

#TimeUsernameProblemLanguageResultExecution timeMemory
127725Dr_CowGondola (IOI14_gondola)C++14
25 / 100
15 ms1144 KiB
#include <bits/stdc++.h> #include "gondola.h" int valid(int n, int inputSeq[]){ int ip=-1,N[100010]; bool tf[250010]; for (int i=0;i<n;i++) if (tf[inputSeq[i]]) return 0; else tf[inputSeq[i]]=true; for (int i=0;i<n;i++){ if (inputSeq[i]<=n){ ip=i;break; } } if (ip==-1) return 1; else { N[ip]=inputSeq[ip]; for (int i=ip+1;i<n;i++) { N[i]=N[i-1]+1; if (N[i]>n) N[i]-=n; } for (int i=ip-1;i>=0;i--){ N[i]=N[i+1]-1; if (N[i]<=0) N[i]+=n; } } for (int i=0;i<n;i++) if (inputSeq[i]<=n && inputSeq[i]!=N[i]) return 0; return 1; } //---------------------- int replacement(int n, int gondolaSeq[], int replacementSeq[]){ bool tf[250010]; int tmp[250010],ip[250010]; int len=0,m=0; for (int i =0;i<n;i++){ m=(gondolaSeq[i],m); tf[gondolaSeq[i]]=true; ip[gondolaSeq[i]]=i+1; } for (int i=m;i>n;i--){ int p=i-1; tf[i]=false; while (tf[p]) p--; tf[p]=true; tmp[len]=p; len++; } for (int i=0;i<len;i++){ replacementSeq[i]=tmp[len-1-i]; } return len; } //---------------------- int countReplacement(int n, int inputSeq[]) { return 1; }

Compilation message (stderr)

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:40:19: warning: value computed is not used [-Wunused-value]
    m=(gondolaSeq[i],m);
       ~~~~~~~~~~~~^
gondola.cpp:40:19: warning: left operand of comma operator has no effect [-Wunused-value]
gondola.cpp:37:19: warning: variable 'ip' set but not used [-Wunused-but-set-variable]
   int tmp[250010],ip[250010];
                   ^~
gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:8:21: warning: 'tf[<unknown>]' may be used uninitialized in this function [-Wmaybe-uninitialized]
   if (tf[inputSeq[i]]) return 0;
       ~~~~~~~~~~~~~~^
gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:48:14: warning: array subscript is below array bounds [-Warray-bounds]
   while (tf[p]) p--;
          ~~~~^
gondola.cpp:49:7: warning: array subscript is below array bounds [-Warray-bounds]
   tf[p]=true;
   ~~~~^
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...