답안 #671877

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
671877 2022-12-14T07:21:36 Z Alihan_8 거래 (IZhO13_trading) C++17
100 / 100
267 ms 32180 KB
#include <bits/stdc++.h>
// include <ext/pb_ds/assoc_container.hpp>
// include <ext/pb_ds/tree_policy.hpp>
// using namespace __gnu_pbds;
using namespace std;
#define all(x) x.begin(), x.end()
#define pb push_back
// define ordered_set tree<int,null_type,less_equal<int>,rb_tree_tag,tree_order_statistics_node_update>
#define mpr make_pair
#define ln '\n'
void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
#define int long long
signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n, q; cin >> n >> q;
    vector <pair<int,bool>> p[n+2];
    while ( q-- ){
        int l, r, x; cin >> l >> r >> x;
        p[l].pb({x-l, true}), p[r+1].pb({x-l, false});
    }
    multiset <int> st;
    for ( int i = 1; i <= n; i++ ){
        for ( auto [val, flag]: p[i] ){
            if ( flag ) st.insert(val);
            else st.erase(st.find(val));
        }
        if ( st.empty() ) cout << "0 ";
        else cout << *st.rbegin()+i << ' ';
    }

    cout << '\n';
}

Compilation message

trading.cpp: In function 'void IO(std::string)':
trading.cpp:11:29: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 | void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
      |                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
trading.cpp:11:70: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 | void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
      |                                                               ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 320 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 2 ms 468 KB Output is correct
6 Correct 2 ms 596 KB Output is correct
7 Correct 125 ms 16704 KB Output is correct
8 Correct 139 ms 18212 KB Output is correct
9 Correct 142 ms 19940 KB Output is correct
10 Correct 159 ms 22132 KB Output is correct
11 Correct 181 ms 21196 KB Output is correct
12 Correct 196 ms 25212 KB Output is correct
13 Correct 215 ms 23552 KB Output is correct
14 Correct 212 ms 25240 KB Output is correct
15 Correct 255 ms 27960 KB Output is correct
16 Correct 253 ms 27396 KB Output is correct
17 Correct 249 ms 28072 KB Output is correct
18 Correct 255 ms 31460 KB Output is correct
19 Correct 222 ms 28704 KB Output is correct
20 Correct 267 ms 32180 KB Output is correct