额,这测试点不是很水吗?![](//图.tk/r)
```
#include<bits/stdc++.h>
using namespace std;
int n,a[114],top,gls,glf,b[114];
int ans[11451][20];
long long b1;
int f()
{
for(int i=1;i<=top;i++)
for(int j=i+1;j<=top;j++)
{
bool fl=1;
for(int k=1;k<=n;k++)
if(ans[i][k]!=ans[j][k])
fl=0;
if(fl)
{
gls=i;
glf=j;
return 0;
}
}
return 1;
}
int main()
{
cin>>n>>b1;
for(int i=1;i<=n;i++)
{
cin>>a[i];
ans[1][i]=a[i];
}
top=2;
int t=1;
while(f())
{
if(t>b1)
{
for(int i=1;i<=n;i++)
cout<<a[i]<<endl;
return 0;
}
for(int i=1;i<=n;i++)
b[i]=a[i];
b[0]=b[n];
for(int i=1;i<=n;i++)
if(b[i-1]==1)
a[i]=!a[i];
for(int i=1;i<=n;i++)
ans[top][i]=a[i];
top++;
t++;
}
for(int i=1;i<=n;i++)
cout<<ans[(b1-gls+1)%(glf-gls)+gls][i]<<endl;
return 0;
}
```
by wjj201p @ 2023-02-01 14:09:36