Pagini recente » Cod sursa (job #1057419) | Cod sursa (job #1288237) | Cod sursa (job #2401089) | Cod sursa (job #1692652) | Cod sursa (job #782184)
Cod sursa(job #782184)
#include <fstream>
using namespace std;
ifstream f("kfib.in");
ofstream g("kfib.out");
long long k,a[3][3],b[3][3],c[3][3];
void mult_array(long long a[][3],long long b[][3],long long c[][3])
{
for(int i=1;i<=2;i++)
for(int j=1;j<=2;j++)
for(int m=1;m<=2;m++)
c[i][j]+=a[i][m]*b[m][j];
}
void cpy_array(long long a[][3],long long c[][3])
{
for(int i=1;i<=2;i++)
for(int j=1;j<=2;j++)
{
a[i][j]=c[i][j];
c[i][j]=0;
}
}
int main()
{
f>>k;
for(int i=1;i<=2;i++)
for(int j=1;j<=2;j++)
{
a[i][j]=1;
b[i][j]=1;
}
a[1][1]=0;
b[1][1]=0;
for(int i=1;i<k-1;i++)
{
mult_array(a,b,c);
cpy_array(a,c);
/*for(int i=1;i<=2;i++)
{
for(int j=1;j<=2;j++)
g<<a[i][j]<<' ';
g<<'\n';
}
g<<'\n';*/
}
/*for(int i=1;i<=2;i++)
{
for(int j=1;j<=2;j++)
g<<a[i][j]<<' ';
g<<'\n';
}*/
long long t=a[2][2];
g<<t%666013;
return 0;
}