Cod sursa(job #2482265)

Utilizator ovidiuz98Zamfir Ovidiu ovidiuz98 Data 27 octombrie 2019 23:15:28
Problema Sortare prin comparare Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.12 kb
#include <iostream>
#include <fstream>
#include <cstring>

#define DIM 50002


using namespace std;

long long N, M, C;
long long ans;
char str[256];
char x[] = {'R', 'O', 'G', 'X', 'A', 'I', 'V'};
long long cnt = 0;

ifstream fin("rogvaiv.in");
ofstream fout("rogvaiv.out");

void back(int k) {

    if (k == N) {

        if (strstr(str, "ROGXAIV") || strstr(str, "VIAXGOR")) {
//            fout << str << "\n";
            cnt ++;
        }
        return;
    }

    for (int i = 0; i < 7; i ++) {
        str[k] = x[i];
        back(k + 1);
    }



}


int main() {

    fin >> C >> N >> M;

//    memset(str, 0, sizeof(str));
//    back(0);
//
//    fout << cnt << '\n';

    if (N < 7) {
        fout << 0 << "\n";
        return 0;
    }

    if (C == 1) {

        ans = (N - 6) % M;

        for (int i = 1; i <= N - 7; i ++){
            ans = (1ll * ans * 1ll * 7) % M;
        }

        fout << ans << "\n";

    } else if (C == 2) {

        ans = (1ll * 2 * 1ll * (N - 6)) % M;

        for (int i = 1; i <= N - 7; i ++){
            ans = (1ll * ans * 1ll * 7) % M;
        }

        fout << ans << "\n";
    }

    return 0;
}