Submission #1077269

#TimeUsernameProblemLanguageResultExecution timeMemory
1077269veehjBroken Device (JOI17_broken_device)C++17
0 / 100
30 ms2852 KiB
#include "Annalib.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define F first #define S second #define pb push_back #define sz(a) (ll) a.size() #define all(x) (x).begin(), (x).end() stack<ll> st; void findans(ll x){ if(x%3==1) st.push(1); else if(x%3==2) st.push(2); else st.push(0); x/=3; if(x!=0) findans(x); } void Anna( int N, long long X, int K, int P[] ){ set<int> s; findans(X); for(int i=0; i<K; i++) s.insert(P[i]); for(int i=0; i<N; i+=2){ if(s.count(i) || s.count(i+1) || st.size()==0){ Set(i, 0); Set(i+1, 0); continue; } if(st.top()==0){ Set(i, 0); Set(i+1, 1); } if(st.top()==1){ Set(i, 1); Set(i+1, 0); } if(st.top()==2){ Set(i, 1); Set(i+1, 1); } st.pop(); } }
#include "Brunolib.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define F first #define S second #define pb push_back #define sz(a) (ll) a.size() #define all(x) (x).begin(), (x).end() long long Bruno( int N, int A[] ){ queue<int> q; for(int i=0; i<N; i+=2){ if(A[i]==A[i+1] && A[i]==0) continue; int x=A[i]*2+A[i+1]-1; q.push(x); } int ans=0; while(!q.empty()){ ans*=3; ans+=q.front(); q.pop(); } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...