Submission #1140696

#TimeUsernameProblemLanguageResultExecution timeMemory
1140696Math4Life2020Ancient Machine (JOI21_ancient_machine)C++20
70 / 100
45 ms6436 KiB
#include "Anna.h" #include <bits/stdc++.h> using namespace std; using ll = int; using pii = pair<ll,ll>; void Anna(int N, vector<char> S) { bool xfnd = 0; vector<ll> vsend; for (ll i=0;i<N;i++) { if (S[i]=='X' && !xfnd) { xfnd = 1; vsend.push_back(1); vsend.push_back(0); } else if (xfnd && S[i]=='Z' && (i==(N-1)||(S[i+1]!='Z'))) { vsend.push_back(1); } else { vsend.push_back(0); } } while (vsend.size()<100000) { vsend.push_back(0); } while (vsend.size()>100000) { vsend.pop_back(); } for (ll x=0;x<100000;x++) { Send(vsend[x]); } }
#include <bits/stdc++.h> using namespace std; using ll = int; using pii = pair<ll,ll>; #include "Bruno.h" vector<ll> wipe1(vector<ll> v0, ll N) { vector<ll> v1; bool f1 = 0; for (ll i=0;i<(v0.size());i++) { v1.push_back(v0[i]); if (v0[i]==1 && f1==0) { f1 = 1; i++; } } while (v1.size()<N) { v1.push_back(1); } return v1; } void Bruno(int N, int L, vector<int> A) { ll cx = -1; stack<ll> s0; A = wipe1(A,100000); for (ll i=0;i<N;i++) { if (A[i]==1) { if (cx==-1) { cx = i; } else { while (!s0.empty()) { Remove((int)s0.top()); s0.pop(); } Remove(i); } } else { if (cx==-1) { Remove(i); } else { s0.push(i); } } } while (!s0.empty()) { Remove((int)s0.top()); s0.pop(); } if (cx != -1) { Remove(cx); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...