牛客小白月赛40_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ
A 数字游戏
#include <cstdio>
using namespace std;
const int N = 32;
int x;
int n;
int main()
{
scanf("%d", &n);
while (n -- )
{
scanf("%d", &x);
int res = 0, flag = x % 2;
while(x)
{
if(x % 2) res++;
x /= 2;
}
int ans = 0;
if(res % 2 && flag) ans = res * 2 - 1;
else if(res % 2 && flag == 0) ans = res * 2 + 1;
else if(res % 2 == 0 && flag) ans = res * 2 - 2;
else ans = 2 * res;
printf("%d\n", ans);
}
return 0;
}
D 优美字符串
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
string a;
while (n -- )
{
cin >> a;
int res = a.length();
for (int i = 0; i < a.length(); i ++ )
{
if(a[i] == a[i + 1]) res ++;
}
cout << res << endl;
}
return 0;
}