Submission #1315150

#TimeUsernameProblemLanguageResultExecution timeMemory
1315150norrawichzzzHandcrafted Gift (IOI20_gift)C++20
10 / 100
77 ms16960 KiB
#include "gift.h" #include <bits/stdc++.h> using namespace std; int construct(int n, int R, vector<int> a, vector<int> b, vector<int> x) { string s=""; vector<int> sl(n+1, 0); for (int i=0; i<R; i++) { int l=a[i], r=b[i]; if (x[i] == 1) { sl[l]++; sl[r+1]--; } } for (int i=1; i<=n; i++) sl[i] += sl[i-1]; for (int i=0; i<=n; i++) if (sl[i] > 1) sl[i] = 1; vector<int> prf(n, 0); prf[0] = sl[0]; for (int i=1; i<n; i++) prf[i] = prf[i-1] + sl[i]; for (int i=0; i<R; i++) { int l=a[i], r=b[i]; if (x[i] == 2) { if (prf[r] - (l-1 >=0 ? prf[l-1] : 0) >= r-l+1) return 0; } } char cur='R'; for (int i=0; i<n; i++) { s+=cur; if (sl[i] != sl[i+1]) { if (cur == 'R') cur = 'B'; else cur = 'R'; } } craft(s); return 1; }
#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...