Cod sursa(job #347650)
Utilizator | Data | 13 septembrie 2009 09:10:09 | |
---|---|---|---|
Problema | 12-Perm | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.69 kb |
#include<fstream>
using namespace std;
const char iname[]="12perm.in";
const char oname[]="12perm.out";
const int mod=1048575;
ifstream f(iname);
ofstream g(oname);
int i,n,x,y,z,t;
int main()
{
f>>n;
if(n==1)
g<<"1\n";
else
if(n==2)
g<<"2\n";
else
if(n==3)
g<<"6\n";
else
if(n==4)
g<<"12\n";
else
{
x=2;y=6;z=12;
for(i=4;i<=n;++i)
t=x+z+((i-2)<<1),t&=mod,x=y,y=z,z=t;
g<<z<<"\n";
}
f.close();
g.close();
return 0;
}