This code can run into my system but It get compilation error on codechef. why?
#include <bits/stdc++.h>
#define int long long
using namespace std;
int q, s, a, b;
int ans = 0;
const int oo = 1e9 + 10, A = (pow(2, 32));
bitset<A> vis;
void doing(int x){
if(x & 1){
x >>= 1;
if(!vis[x]){
ans += x;
}
vis[x] = 1;
}else{
x >>= 1;
if(vis[x]){
ans -= x;
}
vis[x] = 0;
}
}
int32_t main(){
cin >> q >> s >> a >> b;
while(q--){
doing(s);
s *= a;
s %= A;
s += b;
s %= A;
}
cout << ans;
}