Cod sursa(job #62850)
Utilizator | Ionescu Vlad Dastas | Data | 24 mai 2007 14:52:32 |
---|---|---|---|
Problema | 12-Perm | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.47 kb |
#include <cstdio>
#define mod 1048575
FILE *in = fopen("12perm.in","r"), *out = fopen("12perm.out","w");
int main()
{
int m1 = 12, m2 = 6, m3 = 2;
int n;
fscanf(in, "%d", &n);
++n; // T[i - 1] + T[i - 3] + 2 * (i - 2)
for ( int i = 5; i < n; ++i )
{
int t = m1;
int t1 = m2;
m1 = (m1 + m3 + 2 * (i - 2)) & mod;
m2 = t;
m3 = t1;
}
fprintf(out, "%d\n", m1);
return 0;
}