Submission #1216763

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

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

int n, cs, cf;

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

int32_t main() {
    fin >> n >> cs >> cf;
    cs--, cf--;
    vector<bool> vis(n);
    fout << F(cs, 0, vis) + F(cs, 1, vis) << "\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...