Cod sursa(job #3354885)

Utilizator leoebunLeonard Neacsa leoebun Data 21 mai 2026 07:50:58
Problema Iepuri Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.15 kb
#include <iostream>
#include <fstream>
#include <vector>
#define MOD 666013

using namespace std;

vector<vector<int>> multiply_matrix(vector<vector<int>> &a, vector<vector<int>> &b) {
    vector<vector<int>> res(a.size(), vector<int>(b[0].size(), 0));

    for (int i = 0; i < a.size(); i++) {
        for (int j = 0; j < b[0].size(); j++) {
            for (int k = 0; k < b.size(); k++) {
                res[i][j] += (1LL * a[i][k] * b[k][j]) % MOD;
                res[i][j] %= MOD; 
            }
        }
    }

    return res;
}

int main(void) {

    ifstream fin("iepuri.in");
    ofstream fout("iepuri.out");
    int x, y, z, a, b, c, n;
        
    int t = 0;
    fin >> t;
    for (int o = 0; o < t; o++) {
        fin >> x >> y >> z >> a >> b >> c >> n;

        n -= 2;

        vector<vector<int>> res = {{x, y, z}};
        vector<vector<int>> exp = {{0, 0, c},
                                    {1, 0, b},
                                    {0, 1, a}};
    
        while (n != 0) {
            res = multiply_matrix(res, exp);
            n--;
        }
    
        fd_mask << res[0][2] << '\n';
    }

    fin.close();
    fout.close();
    return 0;
}