Submission #1270069

#TimeUsernameProblemLanguageResultExecution timeMemory
1270069parim55Wall (IOI14_wall)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
#include <ctime>
#include <random>
#define fu(i,a,b) for(ll i = a; i < b; i++)
#define fd(i,a,b) for(ll i = a; i >= b; i--)
#define pb push_back
#define ll long long
#define fi first
#define se second
#define inf 1000000000000000000
#define bit(x,y) ((x >> y)&1)
#define MASK(x) (1 << x)
#define ALL(x) (x).begin(), (x).end()
#define vi pair<ll,ll>
#define vvl vector<vector<ll>>
#define vvvi pair<ll,pair<ll,pair<ll,ll>>>
using namespace std;
const ll MAXN = 2e5+2;
const ll MAXC = 1e6+5;
const ll base = 31;
const ll MOD = 1e9+7;
const ll LG = 30;
const ll BS = 560;
const ll dx[] = {0,1,0,-1,-1,-1,1,1};
const ll dy[] = {1,0,-1,0,1,-1,1,-1};
bool minimize(ll& a,const ll& b){ if(a > b){ a = b; return true; } else return false; }
bool maximize(ll& a,const ll& b){ if(a < b){ a = b; return true; } else return false; }
void add(ll& a,const ll& b){ a += b; if(a >= MOD) a -= MOD; }
ll sub(ll a,ll b){ ll r = a - b + MOD; if(r >= MOD) r -= MOD; return r;}
vi lz[MAXN*4],t[MAXN*4];
ll n,q;
void fix(ll id,ll l,ll r){
    t[id].fi = max(t[id].fi,lz[id].fi);
    t[id].se = max(t[id].se,t[id].fi);
    t[id].se = min(t[id].se,lz[id].se);
    t[id].fi = min(t[id].se,t[id].fi);
    if(l != r){
        lz[id*2].fi = max(lz[id].fi,lz[id*2].fi);
        lz[id*2].se = min(lz[id].se,lz[id*2].se);
        lz[id*2+1].fi = max(lz[id].fi,lz[id*2+1].fi);
        lz[id*2+1].se = min(lz[id].se,lz[id*2+1].se);
    }
    lz[id] = {0,inf};
}
void update(ll id,ll l,ll r,ll u,ll v,vi x){
    fix(id,l,r);
    if(l > v || r < u) return;
    if(l >= u && r <= v){
        lz[id].fi = max(lz[id].fi,x.fi);
        lz[id].se = min(lz[id].se,x.se);
        fix(id,l,r);
        return;
    }
    ll mid = l+r >> 1;
    update(id*2,l,mid,u,v,x);
    update(id*2+1,mid+1,r,u,v,x);
}
ll get(ll id,ll l,ll r,ll pos){
    fix(id,l,r);
    if(l == r) return t[id].fi;
    else{
        ll mid = l+r >> 1;
        if(pos <= mid) return get(id*2,l,mid,pos);
        else return get(id*2+1,mid+1,r,pos);
    }
}
void solve(){
    cin >> n >> q;
    fu(id,1,4*n+1){
        lz[id].fi = t[id].fi = 0;
        lz[id].se = t[id].se = inf;
    }
    while(q--){
        ll op,l,r,h; cin >> op >> l >> r >> h;
        l++;r++;
        if(op == 1) update(1,1,n,l,r,{h,inf});
        else update(1,1,n,l,r,{0,h});
    }
    fu(i,1,n+1) cout << get(1,1,n,i) << ' ';
}
signed main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);
//    freopen("searoutes.INP","r",stdin);
//	freopen("searoutes.OUT","w",stdout);
//    freopen("code.inp","r",stdin);
//    freopen("code.out","w",stdout);
    ll t = 1;
	while(t--) solve();
	return 0;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/cce03vRL.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cciKu3t0.o:wall.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/cce03vRL.o: in function `main':
grader.cpp:(.text.startup+0x123): undefined reference to `buildWall(int, int, int*, int*, int*, int*, int*)'
collect2: error: ld returned 1 exit status