Submission #285693

#TimeUsernameProblemLanguageResultExecution timeMemory
285693amoo_safarGondola (IOI14_gondola)C++17
40 / 100
30 ms1784 KiB
#include "gondola.h" #include <bits/stdc++.h> #define pb push_back using namespace std; int valid(int n, int a[]){ vector<int> A, S; for(int i = 0; i < n; i++) A.pb(a[i]); sort(A.begin(), A.end()); for(int i = 0; i + 1 < n; i++) if(A[i] == A[i + 1]) return 0; for(int i = 0; i < n; i++) if(a[i] <= n) S.pb((i - a[i] + n) % n); sort(S.begin(), S.end()); for(int i = 0; i + 1 < (int) S.size(); i++) if(S[i] != S[i + 1]) return 0; return 1; } //---------------------- const int MX = 250010; int replacement(int n, int a[], int ans[]){ int L = (*max_element(a, a + n)) - n; vector<int> mk(MX, 0); for(int i = 0; i < n; i++) mk[a[i]] = 1; int idx = 0; return L; } //---------------------- const long long Mod = 1e9 + 9; int countReplacement(int n, int a[]){ if(!valid(n, a)) return 0; vector<int> A, S; for(int i = 0; i < n; i++) A.pb(a[i]); sort(A.begin(), A.end()); int mx = A.back(); long long res = 1; for(int i = n + 1; i < mx; i++){ int idx = lower_bound(A.begin(), A.end(), i) - A.begin(); if(A[idx] == i) continue; res = (1ll * res * (n - idx)) % Mod; } if(n < A[0]){ res = (1ll * res * n) % Mod; return 0; assert(0); } return res; } /* 1 30 16 26 18 19 20 13 22 21 24 25 17 27 28 29 30 1 2 3 11 5 6 8 7 9 10 12 4 23 14 15 3 7 1 2 3 4 5 6 5 7 4 1 2 7 6 */

Compilation message (stderr)

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:27:6: warning: unused variable 'idx' [-Wunused-variable]
   27 |  int idx = 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...