Cod sursa(job #2021078)
Utilizator | Data | 12 septembrie 2017 17:27:29 | |
---|---|---|---|
Problema | Nunta | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.74 kb |
#include <fstream>
std::ifstream si("nunta.in");
std::ofstream so("nunta.out");
char a[210],b[210];
int main()
{
int n,k;
short t;
si>>n;
a[0]=b[0]=1;
k=0;
short nr;
for(int i=2;i<=n;++i)
{
t=0;
for(int j=0;j<=k;j++)
{
nr=b[j];
b[j]=a[j]+b[j]+t;
if(b[j]>=10)
{
b[j]-=10;
t=1;
}
else
t=0;
a[j]=nr;
}
if(t>0)
{
++k;
b[k]=t;
}
}
if(n==1)
so<<1;
else
for(int i=k;i>=0;--i)
{
so<<(char)(b[i]+'0');
}
return 0;
}