# Guessing Game

This is my code in c++ for Guessing Game,plz help me as it gave wrong answer on codechef:-

#include
#include<string.h>
using namespace std;
long int t,n,m;
long int c;
int rs1[100000];
int rs2[100000];
int main()
{

``````cin>>t;
c=t;
while(t>0)
{

int alice=0,bob=0;

cin>>n>>m;
int tot=m*n;
int odd1,odd2,even1,even2;
if(n%2==0)
{
odd1=n/2;
even1=n-odd1;
}
else
if(n%2!=0)
{
odd1=(n+1)/2;
even1=n-odd1;
}
if(m%2==0)
{
odd2=m/2;
even2=m-odd2;
}
else if(m%2!=0)
{
odd2=(m+1)/2;
even2=m-odd2;
}

alice=(odd1*even2)+(odd2*even1);
int temp,n1,n2;
n1=alice;
n2=tot;

while(n1>0)
{
temp=n1;
n1=n2%n1;
n2=temp;
}
alice=alice/n2;
tot=tot/n2;
rs1[t]=alice;
rs2[t]=tot;
t--;
}

for(int i=c;i>=1;i--)
{
cout<<rs1[i]<<"/"<<rs2[i]<<"\n";
}
``````

}

@ashwinlcnt2k17: n,m can take up to 10^9. so your variable ‘alice’ datatype(i.e int) is not enough to store the result obtained by the product i.e(odd1)(even2)+(odd2)(even1). so change your datatype to long long int. hope you understand.

1 Like
//