Submission #1197776

#TimeUsernameProblemLanguageResultExecution timeMemory
1197776aarb_.tomatexdBoat (APIO16_boat)C++20
0 / 100
2094 ms440 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n; cin >> n; vector<pair<int, int>> range(n); for (int i = 0; i < n; ++i) cin >> range[i].first >> range[i].second; int total = 0; for (int mask = 1; mask < (1 << n); ++mask) { vector<int> idx; for (int i = 0; i < n; ++i) if (mask & (1 << i)) idx.push_back(i); int count = 1; int prev_max = range[idx[0]].second; int ways = 0; // Brute-force all valid increasing assignments function<void(int, int)> dfs = [&](int pos, int prev) { if (pos == idx.size()) { ways++; return; } int i = idx[pos]; for (int val = range[i].first; val <= range[i].second; ++val) { if (val > prev) dfs(pos + 1, val); } }; dfs(0, -1); total += ways; } cout << total << '\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...