解题思路:
存在一个最小的整数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 人评分
A+B for Input-Output Practice (IV) (C语言代码)浏览:484 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1015 |
【蟠桃记】 (C语言代码)浏览:697 |
Wu-求圆的面积 (C++代码)浏览:1994 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:672 |
1017题解浏览:663 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:417 |
马拦过河卒 (C语言代码)浏览:1213 |
半数集问题 (C语言代码)浏览:968 |