解题思路:
存在一个最小的整数x,使得pow(2,x)>=n,则每隔pow(2,x)就会循环一次。
注意事项:
参考代码:
#include<iostream>
#include<cstring>
using namespace std;
typedef long long ll;
string s;
string temp;
ll n;
ll t;
int yihuo(char a,char b)
{
if(a==b)
return 0;
return 1;
}
int main()
{
cin>>n>>t;
cin>>s;
ll max_per=1;
while(max_per<n)
max_per*=2;
t%=max_per;
for(int i=0;i<t;i++)
{
temp=s;
for(int j=1;j<n;j++)
s[j]=(temp[j-1]-'0')^(temp[j]-'0')+'0';
}
cout<<s;
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题12.5 (C语言代码)浏览:830 |
钟神赛车 (C语言代码)浏览:879 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:629 |
妹子杀手的故事 (C语言代码)浏览:691 |
【密码】 (C语言代码)浏览:333 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:560 |
P1001 (C语言代码)浏览:801 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:513 |
【矩阵】 (C++代码)浏览:950 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:2092 |