Submission #170429

#TimeUsernameProblemLanguageResultExecution timeMemory
170429LightningTrading (IZhO13_trading)C++14
100 / 100
438 ms36772 KiB
#include <iostream> #include <algorithm> #include <vector> #include <cmath> #include <set> #include <map> #include <iomanip> #include <stack> #include <queue> #include <deque> using namespace std; typedef long long ll; typedef pair <int, int> pii; #define sz(a) (int)a.size() #define all(a) a.begin(), a.end() #define pb push_back #define ppb pop_back #define mkp make_pair #define F first #define S second #define show(a) cerr << #a <<" -> "<< a <<"\n" #define fo(a, b, c, d) for(int (a) = (b); (a) <= (c); (a) += (d)) #define foo(a, b, c ,d) for(int (a) = (b); (a) >= (c); (a) -= (d)) //#define int ll const int N = 3e5 + 5; const int INF = 1e9 + 5; int n, m, ans[N]; vector <int> add[N], del[N]; multiset <int> st; int main () { ios_base::sync_with_stdio(false); cin.tie(NULL); cin >> n >> m; for(int i = 1; i <= m; ++i) { int l, r, x; cin >> l >> r >> x; add[l].pb(x - l); del[r].pb(x - l); } for(int i = 1; i <= n; ++i) { for(int it : add[i]) { st.insert(it); } if(sz(st)) { ans[i] = *st.rbegin() + i; } else { ans[i] = 0; } for(int it : del[i]) { st.erase(st.find(it)); } } for(int i = 1; i <= n; ++i) { cout << ans[i] <<' '; } return 0; } /* If you only do what you can do, You will never be more than you are now! ---------------------------------------------------------- We must all suffer from one of two pains: the pain of discipline or the pain of regret. The difference is discipline weighs grams while regret weighs tons. */
#Verdict Execution timeMemoryGrader output
Fetching results...