Submission #249743

#TimeUsernameProblemLanguageResultExecution timeMemory
249743apfelsaftBuilding 4 (JOI20_building4)C++14
0 / 100
3 ms512 KiB
#include <stdio.h> #include <algorithm> #define N 1000100 int sufA[N][2]; int sufB[N][2]; int seqA[N]; int seqB[N]; char erg[N]; void calc(int n){ sufA[n-1][0] = 1; sufA[n-1][1] = 0; sufB[n-1][1] = 0; sufB[n-1][1] = 1; for(int i = n-2;i>=0;i--){ if(seqA[i] <= seqA[i+1]){ sufA[i][0] = sufA[i+1][0] + 1; sufB[i][0] = sufB[i+1][0]; } if(seqA[i] <= seqB[i+1]){ sufA[i][0] = std::max(sufA[i][0],sufA[i+1][1] + 1); sufB[i][0] = std::max(sufB[i+1][1],sufB[i][0]); }; if(seqB[i] <= seqB[i+1]){ sufA[i][1] = sufA[i+1][1]; sufB[i][1] = sufB[i+1][1] + 1; }; if(seqB[i] <= seqA[i+1]){ sufA[i][1] = std::max(sufA[i+1][0],sufA[i][1]); sufB[i][1] = std::max(sufB[i][1],sufB[i+1][0] + 1); }; }; }; int main(void){ int n; scanf("%d",&n); for(int i = 0;i<n*2;i++){ scanf("%d",&seqA[i]); }; for(int i = 0;i<n*2;i++){ scanf("%d",&seqB[i]); }; calc(n*2); int a = n; int b = n; int prev = 0; int pos = 1; for(int i = 0;i<n*2&&pos;i++){ if(sufA[i][0] >= a && sufB[i][0] >= b && seqA[i] >= prev){ erg[i] = 'A'; a--; prev = seqA[i]; }else if(sufB[i][1] >= b && sufA[i][1] >= a && seqB[i] >= prev){ erg[i] = 'B'; b--; prev = seqB[i]; }else{ pos = 0; }; }; if(pos){ printf("%s\n",erg); } else printf("-1\n"); return 0; };

Compilation message (stderr)

building4.cpp: In function 'int main()':
building4.cpp:40:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&n);
   ~~~~~^~~~~~~~~
building4.cpp:42:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&seqA[i]);  
     ~~~~~^~~~~~~~~~~~~~~
building4.cpp:45:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&seqB[i]);  
     ~~~~~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...