#include "Annalib.h"
#include <bits/stdc++.h>
#define L long long
using namespace std;
void Set(int,int);
int a[150];
int tr(int n,L x,L xr){
int i;
L bit=1;
while(bit<=x) bit*=2;
bit/=2;
int st=0;
while(bit)
{
L now=x&bit?1:0;
now^=xr;
//printf("%lld %lld %lld\n",bit,now,st);
if(now==1)
{
while(1)
{
if(st>=n) return 0;
if(a[st]==-1)
{
st++;
continue;
}
if(st>0&&a[st-1]==1)
{
a[st]=1;
st++;
break;
}
if(st<n-1&&a[st+1]!=-1)
{
a[st]=a[st+1]=1;
st+=2;
break;
}
st++;
if(st>=n) return 0;
}
}
else
{
while(1)
{
if(st>=n) return 0;
if(a[st]==-1)
{
st++;
continue;
}
if(st==0)
{
a[st]=1;
st+=2;
break;
}
if(st>0&&a[st-1]==0)
{
a[st]=1;
st+=2;
break;
}
st++;
if(st>=n) return 0;
}
}
bit>>=1;
}
return 1;
}
void Anna(int N,L X,int K,int P[]){
int i;
for(i=0;i<K;i++)
{
a[P[i]]=-1;
}
if(!tr(N,X,1))
{
for(i=0;i<N;i++)
{
if(a[i]==1) a[i]=0;
}
//puts("dndnpr");
tr(N,X,0);
}
for(i=0;i<N;i++)
{
if(a[i]==-1) a[i]=0;
Set(i,a[i]);
}
}
/*
int p[100010];
int aa[100010];
void Set(int loc,int val){
aa[loc]=val;
}
L Bruno(int N,int A[]){
L ret=0,xr=0,i;
for(i=0;i<N;i++)
{
if(A[i])
{
if(i<N-1&&A[i+1]) xr=0;
else xr=1;
break;
}
}
if(i==N) return 0;
for(i=0;i<N;i++)
{
if(A[i])
{
if(i>0&&A[i-1])
{
ret=ret*2+(1^xr);
continue;
}
if(i<N-1&&A[i+1])
{
continue;
}
else
{
ret=ret*2+(0^xr);
i++;
}
}
}
return ret;
}
int main()
{
L n,k,x;
scanf("%lld %lld %lld",&n,&k,&x);
for(int i=0;i<k;i++)
{
scanf("%lld",&p[i]);
}
Anna(n,x,k,p);
for(int i=0;i<n;i++)
{
printf("%d ",aa[i]);
}
puts("");
printf("%lld ",Bruno(n,aa));
}
//*/
#include "Brunolib.h"
#include <bits/stdc++.h>
#define L long long
using namespace std;
L Bruno(int N,int A[]){
L ret=0,xr=0,i;
for(i=0;i<N;i++)
{
if(A[i])
{
if(i<N-1&&A[i+1]) xr=0;
else xr=1;
break;
}
}
if(i==N) return 0;
for(i=0;i<N;i++)
{
if(A[i])
{
if(i>0&&A[i-1])
{
ret=ret*2+(1^xr);
continue;
}
if(i<N-1&&A[i+1])
{
i++;
continue;
}
else ret=ret*2+(0^xr);
}
}
return ret;
}
Compilation message
Anna.cpp: In function 'int tr(int, long long int, long long int)':
Anna.cpp:12:6: warning: unused variable 'i' [-Wunused-variable]
int i;
^
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
56 ms |
3056 KB |
Output isn't correct - L* = 0 |
2 |
Incorrect |
71 ms |
3608 KB |
Output isn't correct - L* = 0 |
3 |
Incorrect |
56 ms |
3720 KB |
Output isn't correct - L* = 0 |
4 |
Incorrect |
82 ms |
3720 KB |
Output isn't correct - L* = 0 |
5 |
Incorrect |
62 ms |
3720 KB |
Output isn't correct - L* = 0 |
6 |
Incorrect |
88 ms |
3720 KB |
Output isn't correct - L* = 0 |
7 |
Incorrect |
78 ms |
3720 KB |
Output isn't correct - L* = 0 |
8 |
Incorrect |
61 ms |
3720 KB |
Output isn't correct - L* = 0 |
9 |
Incorrect |
68 ms |
3720 KB |
Output isn't correct - L* = 0 |
10 |
Incorrect |
52 ms |
3720 KB |
Output isn't correct - L* = 0 |
11 |
Incorrect |
63 ms |
3720 KB |
Output isn't correct - L* = 0 |
12 |
Incorrect |
77 ms |
3720 KB |
Output isn't correct - L* = 0 |
13 |
Incorrect |
69 ms |
3720 KB |
Output isn't correct - L* = 0 |
14 |
Incorrect |
69 ms |
3720 KB |
Output isn't correct - L* = 0 |
15 |
Incorrect |
79 ms |
3720 KB |
Output isn't correct - L* = 0 |
16 |
Incorrect |
63 ms |
3720 KB |
Output isn't correct - L* = 0 |
17 |
Incorrect |
61 ms |
3720 KB |
Output isn't correct - L* = 0 |
18 |
Incorrect |
63 ms |
3720 KB |
Output isn't correct - L* = 0 |
19 |
Incorrect |
54 ms |
3720 KB |
Output isn't correct - L* = 0 |
20 |
Incorrect |
52 ms |
3720 KB |
Output isn't correct - L* = 0 |
21 |
Incorrect |
69 ms |
3824 KB |
Output isn't correct - L* = 0 |
22 |
Incorrect |
54 ms |
3824 KB |
Output isn't correct - L* = 0 |
23 |
Incorrect |
61 ms |
3824 KB |
Output isn't correct - L* = 0 |
24 |
Incorrect |
60 ms |
3824 KB |
Output isn't correct - L* = 0 |
25 |
Incorrect |
75 ms |
3824 KB |
Output isn't correct - L* = 0 |
26 |
Incorrect |
51 ms |
3824 KB |
Output isn't correct - L* = 0 |
27 |
Incorrect |
48 ms |
3824 KB |
Output isn't correct - L* = 0 |
28 |
Incorrect |
62 ms |
4000 KB |
Output isn't correct - L* = 0 |
29 |
Incorrect |
67 ms |
4000 KB |
Output isn't correct - L* = 0 |
30 |
Incorrect |
46 ms |
4000 KB |
Output isn't correct - L* = 0 |
31 |
Incorrect |
69 ms |
4000 KB |
Output isn't correct - L* = 0 |
32 |
Incorrect |
75 ms |
4000 KB |
Output isn't correct - L* = 0 |
33 |
Incorrect |
45 ms |
4000 KB |
Output isn't correct - L* = 0 |
34 |
Incorrect |
64 ms |
4000 KB |
Output isn't correct - L* = 0 |
35 |
Incorrect |
53 ms |
4000 KB |
Output isn't correct - L* = 0 |
36 |
Incorrect |
46 ms |
4000 KB |
Output isn't correct - L* = 0 |
37 |
Incorrect |
57 ms |
4000 KB |
Output isn't correct - L* = 0 |
38 |
Incorrect |
57 ms |
4000 KB |
Output isn't correct - L* = 0 |
39 |
Incorrect |
50 ms |
4000 KB |
Output isn't correct - L* = 0 |
40 |
Incorrect |
75 ms |
4000 KB |
Output isn't correct - L* = 0 |