Submission #1294225

#TimeUsernameProblemLanguageResultExecution timeMemory
1294225vuqar_bazarov1Kangaroo (CEOI16_kangaroo)C++20
6 / 100
2095 ms572 KiB
#pragma GCC optimize("Ofast,unroll-loops,O3") #include <bits/stdc++.h> using namespace std; #ifdef LOCAL #include "algo/debug.h" #else #define debug(...) 73 #endif using int64 = int64_t; using ld = long double; using uint64 = uint64_t; using int128 = __int128_t; #define all(v) (v).begin(), (v).end() #define rall(v) (v).rbegin(), (v).rend() const int md = 1e9 + 7; const int64 inf = 1e18; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n, cs, cf; cin >> n >> cs >> cf; vector<int> a(n); for (int i = 0; i < n; i++) { a[i] = i + 1; } int cnt = 0; do { if (a[0] == cs && a.back() == cf) { bool can = true; for (int i = 1; i < n - 1; i++) { if (a[i + 1] > a[i] && a[i] > a[i - 1]) { can = false; break; } } for (int i = 1; i < n - 1; i++) { if (a[i + 1] < a[i] && a[i] < a[i - 1]) { can = false; break; } } cnt += int(can); } } while (next_permutation(all(a))); cout << cnt << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...