Submission #103570

#TimeUsernameProblemLanguageResultExecution timeMemory
103570SecretAgent007곤돌라 (IOI14_gondola)C++17
25 / 100
62 ms4728 KiB
#include "gondola.h" #include <bits/stdc++.h> using namespace std; int valid(int n, int inputSeq[]){ int index = 0; int num = n; map< int, bool> visited; for(int i = 0; i < n; i++){ if(visited[inputSeq[i]]) return 0; visited[inputSeq[i]] = true; if(inputSeq[i] <= num){ num = inputSeq[i]; index = i; } } int start = (index-num+1+n)%n; int curr = 1; for(int i = start; i < n; i++){ if(inputSeq[i] <= n && inputSeq[i] != curr) return 0; curr++; } for(int j = 0; j < start; j++){ if(inputSeq[j] <= n && inputSeq[j] != curr) return 0; curr++; } return 1; } int replacement(int n, int gondolaSeq[], int replacementSeq[]){ int index = 0; int num = n; int maxi = 0; for(int i = 0; i < n; i++){ if(gondolaSeq[i] <= num){ num = gondolaSeq[i]; index = i; } maxi = max(maxi, gondolaSeq[i]); } int start = (index-num+1+n)%n; int curr = 1; map<int, int> mape; int in; for(int i = start; i < n; i++){ mape[gondolaSeq[i]] = curr; if(gondolaSeq[i] == maxi) in = curr; curr++; } for(int j = 0; j < start; j++){ mape[gondolaSeq[j]] = curr; if(gondolaSeq[j] == maxi) in = curr; curr++; } int c = 0; for(int i = n+1; i <= maxi; i++){ if(mape[i] != 0){ replacementSeq[c] = mape[i]; }else{ replacementSeq[c] = in; } c++; } return c; } int countReplacement(int n, int inputSeq[]){ } /* int main(){ int n; cin >> n; int v[n]; int maxi = 0; for(int i = 0; i < n; i++){ cin >> v[i]; maxi = max(maxi, v[i]); } int ans[maxi-n]; cout << replacement(n,v,ans) << endl; for(int a : ans){ cout << a << ' '; } cout << endl; } */

Compilation message (stderr)

gondola.cpp: In function 'int countReplacement(int, int*)':
gondola.cpp:87:1: warning: no return statement in function returning non-void [-Wreturn-type]
 }
 ^
gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:76:31: warning: 'in' may be used uninitialized in this function [-Wmaybe-uninitialized]
             replacementSeq[c] = in;
             ~~~~~~~~~~~~~~~~~~^~~~
#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...