Pagini recente » Cod sursa (job #2200849) | Cod sursa (job #2216549) | Cod sursa (job #2457533) | Cod sursa (job #1768541) | Cod sursa (job #2401152)
#include <fstream>
#include <cstring>
#define MOD 666013
using namespace std;
ifstream fin("iepuri.in");
ofstream fout("iepuri.out");
int t,x,y,z,A,B,C,n,i,a[4][4],v[4][4],c[4][4];
void inmultire(int v[4][4], int a[4][4]){
int d[4][4];
memset(d,0,sizeof(d));
for(int i=1;i<=3;i++)
for(int j=1;j<=3;j++)
for(int k=1;k<=3;k++)
d[i][j]=(d[i][j]+v[i][k]*a[k][j])%MOD;
for(int i=1;i<=3;i++)
for(int j=1;j<=3;j++)
v[i][j]=d[i][j];
}
void rp(int k){
while(k!=0){
if(k%2==1)
inmultire(c,a);
inmultire(a,a);
k/=2;
}
}
int main() {
fin>>t;
for(i=1;i<=t;i++){
fin>>x>>y>>z>>A>>B>>C>>n;
memset(a,0,sizeof(a));
memset(c,0,sizeof(c));
a[2][1]=a[3][2]=1;
a[1][3]=C;
a[2][3]=B;
a[3][3]=A;
v[1][1]=x;
v[1][2]=y;
v[1][3]=z;
c[1][1]=c[2][2]=c[3][3]=1;
rp(n-2);
inmultire(v,c);
fout<<v[1][3]<<'\n';
}
return 0;
}