제출 #1319930

#제출 시각아이디문제언어결과실행 시간메모리
1319930vaishakhvLasers (NOI19_lasers)C++20
0 / 100
13 ms4520 KiB
// Source: https://usaco.guide/general/io #include <bits/stdc++.h> using namespace std; using ll = long long; #define eb emplace_back // faster than push_back xD // pbds UwU #include <ext/pb_ds/assoc_container.hpp> using namespace __gnu_pbds; #define oset tree<ll, null_type,less<ll>, rb_tree_tag,tree_order_statistics_node_update> // use pair for ms // my io library :D #define m1(x) template<class T, class... U> void x(T&& a, U&&... b) #define m2(x) (ll[]){(x forward<U>(b),0)...} m1(pr){cout << forward<T>(a); m2(cout << " " <<); cout << "\n";} m1(re){cin >> forward<T>(a); m2(cin >>);} int main() { ios::sync_with_stdio(0); cin.tie(0); ll l, r; re(l, r); vector<vector<ll>> x(r); for (ll i{}; i < r; i++) { ll X; re(X); for (ll j{}; j < X; j++) { ll c; re(c); x[i].push_back(c); } } ll w1 = accumulate(x[0].begin(), x[0].end(), 0LL), w2 = accumulate(x[1].begin(), x[1].end(), 0LL); ll l1 = max(1LL, l - w1 + 1), r1 = min(l, w1); ll l2 = max(1LL, l- w2+ 1), r2 = min(l, w2), ans; if (r1 < l2 || r2 < l1) { ans = (r1 - l1 + 1) + (r2 - l2 + 1); } else { ll l = min(l1, l2); ll r = max(r1, r2); ans = r - l + 1; } pr(max(0LL,ans)); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...