一直是第九个点 T,求帮卡常。
#include <cstdio>
#include <cstring>
using namespace std;
int n,t;
int a[10010];
char s[10010];
int main () {
scanf("%d%d%s",&n,&t,s);
for(register int i=0;i<n;++i) a[i+1]=s[i]^48;
int len=1;
while(len<=n) len<<=1;
t%=len;
while(t--) {
register int i;
for(i=n;i>11;i-=10) {
a[i]^=a[i-1];
a[i-1]^=a[i-2];
a[i-2]^=a[i-3];
a[i-3]^=a[i-4];
a[i-4]^=a[i-5];
a[i-5]^=a[i-6];
a[i-6]^=a[i-7];
a[i-7]^=a[i-8];
a[i-8]^=a[i-9];
a[i-9]^=a[i-10];
}
while(i>1) a[i]^=a[i-1],--i;
}
for(register int i=1;i<=n;++i) printf("%d",a[i]);
return 0;
}