Submission #1064587

#TimeUsernameProblemLanguageResultExecution timeMemory
1064587sunboiGondola (IOI14_gondola)C++14
55 / 100
26 ms5416 KiB
#include <bits/stdc++.h> #include "gondola.h" using namespace std; int valid(int n, int inputSeq[]){ vector<int> a; int mn = 1e6; set<int> val; for (int i = 0; i < n; i++){ mn = min(mn, inputSeq[i]); val.insert(inputSeq[i]); } for (int i = 0; i < n; i++){ if (inputSeq[i] == mn) a.push_back(mn); else if (!a.empty()){ a.push_back(inputSeq[i]); } } for (int i = 0; i < n; i++){ if (inputSeq[i] == mn) break; a.push_back(inputSeq[i]); } int cnt = a[0]; int f = 1; for (int i = 0; i < n; i++){ if (cnt == a[i] || a[i] >= n + 1) { cnt++; continue; } f = 0; } if ((int)(val.size()) != n) f = 0; return f; } int replacement(int n, int gondolaSeq[], int replacementSeq[]){ vector<int> a; int mn = 1e6; for (int i = 0; i < n; i++){ mn = min(mn, gondolaSeq[i]); } for (int i = 0; i < n; i++){ if (gondolaSeq[i] == mn) a.push_back(mn); else if (!a.empty()){ a.push_back(gondolaSeq[i]); } } for (int i = 0; i < n; i++){ if (gondolaSeq[i] == mn) break; a.push_back(gondolaSeq[i]); } int cnt = a[0]; if (a[0] >= n + 1) cnt = 1; set<pair<int, int>> repla; for (int i = 0; i < n; i++){ if (cnt == n + 1) cnt = 1; if (cnt == a[i]) { cnt++; continue; }else{ repla.insert({a[i], cnt}); cnt++; } } int l = 0; int cur = n + 1; for (auto x : repla){ //cout << x.first << ' ' << x.second << endl; replacementSeq[l] = x.second; l++; while(cur < x.first){ replacementSeq[l] = cur; l++; cur++; } cur++; } return l; } int countReplacement(int n, int inputSeq[]){ return 0; }
#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...