Submission #553701

#TimeUsernameProblemLanguageResultExecution timeMemory
553701QwertyPiFortune Telling 2 (JOI14_fortune_telling2)C++14
4 / 100
3061 ms1756 KiB
#include <bits/stdc++.h> using namespace std; const int N = 1e5+3; int A[N], B[N], C[N]; int x1[N], x2[N], pa[N]; struct BIT{ int bit[N]; void upd(int p, int v){ for(int i = p; i < N; i += i & -i){ bit[i] += v; } } int qry(int p){ int ret = 0; for(int i = p; i; i -= i & -i){ ret += bit[i]; } return ret; } } bit0, bit1; int32_t main(){ int n, k; cin >> n >> k; for(int i = 0; i < n; i++){ cin >> A[i] >> B[i]; x1[i] = min(A[i], B[i]); x2[i] = max(A[i], B[i]); pa[i] = x1[i] != A[i]; } for(int i = 0; i < k; i++){ cin >> C[i]; } // A[i] <= C[i] < B[i] long long ans = 0; for(int i = 0; i < n; i++){ for(int j = 0; j < k; j++){ if(x1[i] <= C[j] && C[j] < x2[i]){ pa[i] = true; }else if(x2[i] <= C[j]){ pa[i] ^= 1; } } ans += pa[i] ? x2[i] : x1[i]; } cout << ans << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...