Submission #1216774

#TimeUsernameProblemLanguageResultExecution timeMemory
1216774magyarakoosKangaroo (CEOI16_kangaroo)C++20
0 / 100
0 ms320 KiB
#include <bits/stdc++.h>
using namespace std;

int n, cs, cf;

int F(int i, bool dir, vector<bool> vis, int vcnt) {
    vis[i] = 1;
    vcnt++;
    int result = 0;
    if (vcnt == n) return i == cf;
    if (dir) {
        for (int j = i + 1; j < n; j++) {
            if (!vis[j]) result += F(j, 0, vis, vcnt);
        }
    } else {
        for (int j = i - 1; j >= 0; j--) {
            if (!vis[j]) result += F(j, 1, vis, vcnt);
        }
    }
    return result;
}

int32_t main() {
    ifstream fin("kangoroo.in");
    ofstream fout("kangoroo.out");
    fin >> n >> cs >> cf;
    cs--, cf--;
    vector<bool> vis(n);
    fout << F(cs, 0, vis, 0) + F(cs, 1, vis, 0) << "\n";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...