Submission #47554

# Submission time Handle Problem Language Result Execution time Memory
47554 2018-05-05T03:40:18 Z JohnTitor Trading (IZhO13_trading) C++11
100 / 100
365 ms 33288 KB
#include <bits/stdc++.h>
using namespace std;
#define FOR(i, j, k) for(int i=(j); i<=(k); i++)
#define FFOR(i, j, k) for(int i=(j); i<(k); i++)
#define DFOR(i, j, k) for(int i=(j); i>=(k); i--)
#define bug(x) cerr<<#x<<" = "<<(x)<<'\n'
#define pb push_back
#define mp make_pair
#define setbit(s, i) (s|=(1LL<<(i)))
#define bit(s, i) (((s)>>(i))&1LL)
#define mask(i) ((1LL<<(i)))
#define builtin_popcount __builtin_popcountll
typedef long long ll;
typedef long double ld;
template <typename T> inline void read(T &x){
    char c;
    bool nega=0;
    while((!isdigit(c=getchar()))&&(c!='-'));
    if(c=='-'){
        nega=1;
        c=getchar();
    }
    x=c-48;
    while(isdigit(c=getchar())) x=x*10+c-48;
    if(nega) x=-x;
}
template <typename T> inline void writep(T x){
    if(x>9) writep(x/10);
    putchar(x%10+48);
}
template <typename T> inline void write(T x){
    if(x<0){
        putchar('-');
        x=-x;
    }
    writep(x);
}
template <typename T> inline void writeln(T x){
    write(x);
    putchar('\n');
}
#define taskname "H"
int n, m;
int l[300001];
int r[300001];
int x[300001];
vector <int> a[300002];
vector <int> b[300002];
multiset <int> s;
int main(){
    #ifdef Kanikou
        if(fopen(taskname".inp", "r"))
            freopen(taskname".inp", "r", stdin);
    #endif // Kanikou
    read(n);
    read(m);
    FOR(i, 1, m){
        read(l[i]);
        read(r[i]);
        read(x[i]);
        x[i]-=l[i];
        a[l[i]].pb(x[i]);
        b[r[i]+1].pb(x[i]);
    }
    FOR(i, 1, n){
        for(int x: a[i]) s.insert(x);
        for(int x: b[i]) s.erase(s.find(x));
        if(s.empty()) write(0);
        else write(*s.rbegin()+i);
        putchar(" \n"[i==n]);
    }
}
# Verdict Execution time Memory Grader output
1 Correct 13 ms 14456 KB Output is correct
2 Correct 12 ms 14532 KB Output is correct
3 Correct 13 ms 14532 KB Output is correct
4 Correct 13 ms 14556 KB Output is correct
5 Correct 13 ms 14604 KB Output is correct
6 Correct 14 ms 14684 KB Output is correct
7 Correct 180 ms 24932 KB Output is correct
8 Correct 187 ms 25816 KB Output is correct
9 Correct 209 ms 25816 KB Output is correct
10 Correct 227 ms 26672 KB Output is correct
11 Correct 241 ms 27208 KB Output is correct
12 Correct 270 ms 28996 KB Output is correct
13 Correct 249 ms 28996 KB Output is correct
14 Correct 276 ms 29448 KB Output is correct
15 Correct 304 ms 29988 KB Output is correct
16 Correct 315 ms 30344 KB Output is correct
17 Correct 302 ms 30492 KB Output is correct
18 Correct 352 ms 33288 KB Output is correct
19 Correct 318 ms 33288 KB Output is correct
20 Correct 365 ms 33288 KB Output is correct