各位大佬们,2023江西省赛的C题 这题为什么转换p进制后在判断数位和的奇偶是错误的?求指正,孩子已经一天了没找出来,和标答对照各种样例都是对的!!!求大佬们有空帮我找一下错误!!万分感谢!!!!!!
#include<iostream>
#include<algorithm>
using namespace std;
const int N = 3e5 + 5;
long long p, a[N], n;
int f(long long x)
{
int res = 0;
while(x)
{
res += x%p %2;
x /= p;
}
return res;
}
int main()
{
cin>>n>>p;
for (int i = 1; i <= n; i++)
cin>>a[i];
if (p == 1)
{
int ans =0;
for (int i = 1; i <= n; i ++)
ans += a[i] % 2;
if (ans% 2) cout<<"GOOD";
else cout<<"BAD";
}
else
{
int res = 0;
for (int i = 1; i <= n; i++)
res += f(a[i]);
if (res % 2) cout<<"GOOD";
else cout<<"BAD";
}
return 0;
}