Cod sursa(job #2469010)

Utilizator bluestorm57Vasile T bluestorm57 Data 6 octombrie 2019 13:34:03
Problema Iepuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
//wish me luck
#include <bits/stdc++.h>

using namespace std;

ifstream f("iepuri.in");
ofstream g("iepuri.out");

int dp[2][3],T,t,a,b,c,n;

int main(){
    int i;
    f >> T;
    while(T--){
        t = 0;
        f >> dp[t][0] >> dp[t][1] >> dp[t][2] >> a >> b >> c >> n;
        if(n <= 2){
            g << dp[t][n] << "\n";
            continue;
        }
        n -= 2;
        while(n > 0){
            dp[1 - t][0] = a * dp[t][2] + b * dp[t][1] + c * dp[t][0];
            dp[1 - t][1] = a * dp[1 - t][0] + b * dp[t][2] + c * dp[t][1];
            dp[1 - t][2] = a * dp[1 - t][1] + b * dp[1 - t][0] + c * dp[t][2];
            t = 1 - t;
            if(n <= 3)
                g << dp[t][n - 1] << "\n";
            n -= 3;
        }
    }

    return 0;
}