【题解】P8763 [蓝桥杯 2021 国 ABC] 异或变换
记
进行
然后就可以对于每一位来计算。考虑到
#include<bits/stdc++.h>
using namespace std;
template<typename T>void rd(T&x){
x=0;int f=1;char c=getchar();
while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}
while(c>='0'&&c<='9'){x=x*10+c-48;c=getchar();}
x*=f;
}
typedef long long ll;
const int N=1e4+10;
int n;
ll t;
bool a[N];
int main(){
rd(n);rd(t);
for(int i=0;i<n;++i)a[i]=getchar()&1;
while(t){
ll l=t&-t;t-=l;
for(int i=n-1;i>=l;--i)a[i]^=a[i-l];
}
for(int i=0;i<n;++i)putchar(a[i]^48);
}