Submission #1294249

#TimeUsernameProblemLanguageResultExecution timeMemory
1294249eldaees131313Kangaroo (CEOI16_kangaroo)C++20
6 / 100
2095 ms572 KiB
////////////////////////////// Author:eldaee, coder_viper!!!!!!!!!!!!!!!!!!!!!!!!11 #pragma GCC optimize ("Ofast") #include <bits/stdc++.h> #define int long long #define str string #define vec vector #define dou double #define ld long double #define pb push_back #define ppb pop_back #define eb emplace_back #define YES cout << "YES" << '\n' #define Yes cout << "Yes" << '\n' #define NO cout << "NO" << '\n' #define No cout << "No" << '\n' #define gcd __gcd #define all(x) x.begin(),x.end() #define eldaee ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); #include <bits/stdc++.h> /* */ using namespace std; void solve() { int n, cs, cf; cin >> n >> cs >> cf; vec<int> v(n); for (int i = 0; i < n; i++) { v[i] = i + 1; } int res = 0; while(true) { if (v[0] == cs && v[n - 1] == cf) { bool fl = true; for (int i = 1; i < n - 1; i++) { if ((v[i - 1] < v[i] && v[i] < v[i + 1]) || (v[i - 1] > v[i] && v[i] > v[i + 1])) { fl = false; break; } } if (fl) { res++; } } int i = n - 2; while(i >= 0 && v[i] >= v[i + 1]) { i--; } if (i < 0) { break; } int j = n - 1; while(v[j] <= v[i]) { j--; } swap(v[i], v[j]); reverse(v.begin() + i + 1, v.end()); } cout << res << '\n'; } signed main() { eldaee solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...