解题思路:
找规律,循环,2的某次方。1小于等于2的0次方,即2的0次方;2小于等于2的1次方,即2的1次方;3和4则为2的2次方;5到8则为2的3次方。。。
注意事项:
参考代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
long long n, t; cin >> n >> t;
vector<int>v(n);
string s; cin >> s;
for (int i = 0; i < n; ++i)
{
v[i] = s[i] - '0';
}
int temp = log2(n);
if (pow(2, temp) < n) temp++;
int mod = pow(2,temp);
t = t%mod;
vector<int>ans(n);
ans[0] = v[0];
while (t--)
{
for (int i = 1; i < n; ++i)
{
ans[i] = v[i - 1] ^ v[i];
}
v = ans;
}
for (int i = 0; i < n; ++i)
{
s[i] = ans[i] + '0';
}
cout << s;
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:1078 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:635 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:702 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:644 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:383 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:586 |
回文数字 (C语言代码)浏览:2529 |
企业奖金发放 (C语言代码)浏览:2398 |
陶陶摘苹果2 (C语言代码)浏览:640 |
简单的a+b (C语言代码)浏览:523 |