Getting wrong answer in NSTEPS
#include<bits/stdc++.h>
using namespace std;
class nsteps
{
private:
struct point
{
int x;
int y;
};
int n;
point* data;
vector I;
vector I_2;
public:
nsteps(int num)
{
n=num;
data=new point[n];
I.push_back(0);
I_2.push_back(0);
I_2.push_back(2);
}
void read()
{
for(int i=0;i<n;i++)
{
cin>>data[i].x>>data[i].y;
}
}
long long int q(long long int x)
{
if(x==0)
return 0;
else if(x%2==1)
return q(x-1)+1;
else
return q(x-1)+3;
}
long long int w(long long int x)
{
if(x==2)
return 2;
else if(x%2==1)
return w(x-1)+1;
else
return w(x-1)+3;
}
void print()
{
for(int i=0;i<n;i++)
{
if(data[i].x<=10000 && data[i].y<=10000)
{
if(data[i].y==data[i].x)
cout<<q(data[i].x)<<endl;
else if(data[i].y==(data[i].x)-2)
cout<<w(data[i].x)<<endl;
else
cout<<“No number”<<endl;
}
else
cout<<“No number”<<endl;
}
}
};
int main()
{
int num;
cin>>num;
nsteps s(num);
s.read();
s.print();
return 0;
}
cannot figure out whats wrong in this.Thanx in advance.