2156: Drunk
Status | In/Out | TIME Limit | MEMORY Limit | Submit Times | Solved Users | JUDGE TYPE |
---|---|---|---|---|---|---|
![]() | stdin/stdout | 3s | 8192K | 1158 | 262 | Standard |
Jack is drunk again and he wants to walk out of the bar. But his steps are very strange. He first walks one step forward then the two backward then three forward and so on.
Input and Output
Each case will give you an integer to indicate how many steps forward is needed to walk out of bar. You should output the number of steps Jack needs to walk. You can assume that the result isless than 2 63.Sample Input
1 2
Sample Output
1 6
#include<iostream>
using namespace std;
int main()
{
int a[100]={0};
int i,high=0,j,carry,n,temp;
while(cin>>n)
{
for(i=0;i<=99;i++)
a[i]=0;
if(n!=0)
a[0]=1;
else
a[0]=0;
high=0;
for(i=2;i<=2*n-1;i++)
{
carry=i;
for(j=0;j<=high;j++)
{
temp=a[j]+carry;
a[j]=temp%10;
carry=temp/10;
}
if(carry)
{
while(carry)
{
a[j++]=carry%10;
carry=carry/10;
high=j-1;
}
}
}
for(i=high;i>=0;i--)
cout<<a[i];
cout<<endl;
}
return 0;
}