Pagini recente » Cod sursa (job #2156310) | Cod sursa (job #480411) | Cod sursa (job #610384) | Cod sursa (job #582999) | Cod sursa (job #289608)
Cod sursa(job #289608)
#include<algorithm>
#include<vector>
using namespace std;
#define DIM 11
#define MOD 666013
int t;
long long m[DIM][DIM],sol[DIM][DIM];
void inm(long long a[DIM][DIM], long long b[DIM][DIM]){
int i,j,k;
long long c[DIM][DIM];
memset(c,0,sizeof(c));
for(i=1; i<4; ++i)
for(j=1; j<4; ++j)
for(k=1; k<4; ++k)
c[i][j]=(c[i][j]+a[i][k]*b[k][j])%MOD;
memcpy(a,c,sizeof(c));}
void solve(){
int i,x,y,z,a,b,c,n;
scanf("%d",&t);
for(i=0; i<t; ++i){
scanf("%d%d%d%d%d%d%d",&x,&y,&z,&a,&b,&c,&n);
memset(m,0,sizeof(m));
memset(sol,0,sizeof(sol));
m[1][2]=m[2][3]=1;
m[3][1]=c;
m[3][2]=b;
m[3][3]=a;
sol[1][1]=sol[2][1]=sol[3][1]=1;
for(; n; n>>=1){
if(n&1)
inm(sol,m);
inm(m,m);}
printf("%lld\n",((sol[1][1]*x)%MOD+(sol[1][2]*y)%MOD+(sol[1][3]*z)%MOD)%MOD);}}
int main(){
freopen("iepuri.in","r",stdin);
freopen("iepuri.out","w",stdout);
solve();
return 0;}