Pagini recente » Cod sursa (job #366587) | Cod sursa (job #1242831) | Cod sursa (job #1690656) | Cod sursa (job #2100680) | Cod sursa (job #3256817)
#include <iostream>
#include <fstream>
#define ll long long
#define MOD 666013
using namespace std;
ifstream fin("iepuri.in");
ofstream fout("iepuri.out");
int K,F[3][3],M[3][3];
int T,X,Y,Z,A,B,C,N;
void Multiply(int x[3][3],int y[3][3])
{
int rez[3][3]={0};
for(int i=0; i < 3 ;i++)
{
for(int j=0; j < 3;j++)
{
for(int k=0 ; k<3 ;k++)
{
rez[i][j]=(rez[i][j]+ (1LL * x[i][k] * y[k][j])%MOD)%MOD;
}
}
}
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
x[i][j]=rez[i][j];
}
}
int main()
{
fin >> T;
while(T--)
{
fin >> X >> Y >> Z >> A >> B >> C >> N;
F[0][0] = X; F[0][1] = Y; F[0][2] = Z;
M[0][0] = M[0][1] = M[1][1] = M[2][0] = 0;
M[1][0] = M[2][1] = 1;
M[0][2] = C; M[1][2] = B; M[2][2] = A;
while(N)
{
if(N % 2 == 1)
Multiply(F,M);
Multiply(M,M);
N = N /2;
}
fout << F[0][0] <<"\n";
}
return 0;
}