# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
100084 | dantoh000 | Broken Device (JOI17_broken_device) | C++14 | 65 ms | 3312 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "Annalib.h"
#include <bits/stdc++.h>
using namespace std;
void Anna( int N, long long X, int K, int P[] ){
//printf("anna");
bool isbroken[N]; memset(isbroken,0,sizeof(isbroken));
for (int i = 0; i < K; i++){
isbroken[P[i]] = true;
}
int s = 0;
while (X && s < N){
if (isbroken[s]||isbroken[s+1]){
Set(s,0);
Set(s+1,0);
}
else{
//printf("%d",X%2);
if (X % 3 == 1){
Set(s,0);
Set(s+1,1);
}
else if (X % 3 == 2){
Set(s,1);
Set(s+1,0);
}
else{
Set(s,1);
Set(s+1,1);
}
X /= 3;
}
s+=2;
}
for (int i = s; i < N; i++){
Set(i,0);
}
//printf("\n");
}
#include "Brunolib.h"
#include <bits/stdc++.h>
using namespace std;
long long Bruno( int N, int A[] ){
//printf("bruno");
long long ans = 0ll;
int s = 0;
int num = 0;
stack<int> st;
while (s<N){
if (A[s] || A[s+1]){
num++;
//printf("%d",(A[s]^A[e]));
st.push(A[s]*2+A[s+1]);
}
s+=2;
}
while (st.size()){
//printf("%d",st.top());
ans*=3;
ans+=(st.top()%3);
st.pop();
}
//printf("\n%lld\n",ans);
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |