Pagini recente » Cod sursa (job #2803561) | Cod sursa (job #2177911) | Cod sursa (job #2147782) | Cod sursa (job #1559729) | Cod sursa (job #1917335)
#include <bits/stdc++.h>
using namespace std;
ifstream f("iepuri.in");
ofstream g("iepuri.out");
#define mod 666013
int t,x,y,z,a,b,c,n;
long long aux[4][4],sol[4][4];
void multiply ( long long a[4][4] , long long b[4][4] )
{
long long c[4][4];
for ( int i = 1; i <= 3; i++ )
for ( int j = 1; j <=3 ; j++ )
c[i][j] = 0;
for ( int i = 1; i <= 3; i++ )
for ( int j = 1; j <= 3; j++ )
for ( int k = 1; k <=3 ; k++ )
c[i][j] += a[i][k]*b[k][j];
for ( int i = 1; i <=3 ; i++ )
for ( int j = 1; j <=3 ; j++ )
a[i][j] = c[i][j]%mod;
}
int solve(int n)
{
/* for ( int i = 1; i<=3;i++ )
for (int j = 1; j<=3;j++)
sol[i][j] = 0; */
sol[1][1] = z; sol[1][2] = y; sol[1][3] = x;
while(n)
{
if(n%2)
{
n--;
multiply(sol,aux);
}
n=n/2;
multiply(aux,aux);
}
g<<sol[1][1] <<"\n";
}
int main()
{
f>>t;
for(;t--;)
{
f>>x>>y>>z>>a>>b>>c>>n;
aux[1][1] = a; aux[2][1] = b; aux[3][1] = c;
aux[1][2] = 1; aux[1][3] = 0; aux[2][3] = 1;
aux[2][2] = aux[3][2] = aux[3][3] = 0;
solve(n-2);
}
return 0;
}