# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
27617 | rondojim | 캥거루 (CEOI16_kangaroo) | C++14 | 2000 ms | 1172 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <stdio.h>
#include <algorithm>
#include <vector>
using namespace std;
const int MAXN = 10;
int N, x, y, res;
vector<int> v;
int main(){
scanf("%d %d %d", &N, &x, &y);
if(x > y) swap(x, y);
for(int i=1; i<=N; ++i) if(i != x && i != y) v.push_back(i);
do{
int prev = v[0], inc = (x < v[0]);
for(int i=1; i<v.size(); ++i){
if((v[i - 1] < v[i] && inc) || (v[i - 1] > v[i] && !inc)){ inc = -1; break; }
inc = (v[i - 1] < v[i]);
}
int r = v.back();
if((r < y && inc) || (r > y && !inc)) inc = -1;
res += (inc != -1);
} while(next_permutation(v.begin(), v.end()));
printf("%d\n", res);
return 0;
}
Compilation message (stderr)
# | 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... |