Submission #1314651

#TimeUsernameProblemLanguageResultExecution timeMemory
1314651joshjuiceArcade (NOI20_arcade)C++20
100 / 100
124 ms8500 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define ppf pop_front #define ppb pop_back #define pf push_front #define pb push_back #define fr first #define sc second #define mnto(x,y) x = min(x, (__typeof__(x))y) #define mxto(x,y) x = max(x, (__typeof__(x))y) #define setval(arr, x) memset(arr, x, sizeof(arr)) int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m; cin >> n >> m; int t[m], a[m]; for (int i = 0; i < m; ++i) cin >> t[i]; for (int i = 0; i < m; ++i) cin >> a[i]; vector<pair<int, int>> time(m); for (int i = 0; i < m; ++i) time[i] = {t[i] + a[i], t[i] - a[i] - m}; sort(time.begin(), time.end()); vector<int> lis; for (auto &e : time) { auto it = lower_bound(lis.begin(), lis.end(), -e.sc); if (it == lis.end()) lis.pb(-e.sc); else *it = -e.sc; } cout << lis.size(); }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...