#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |