Submission #618385


Source Code Expand

#include <bits/stdc++.h>
#define rep(i,n) for(int i=0;i<(int)(n);i++)
#define rep1(i,n) for(int i=1;i<=(int)(n);i++)
#define all(c) c.begin(),c.end()
#define pb push_back
#define fs first
#define sc second
#define show(x) cout << #x << " = " << x << endl
#define chmin(x,y) x=min(x,y)
#define chmax(x,y) x=max(x,y)
using namespace std;
typedef long long ll;
int N,L,t[100000],x[100000];
ll inf=1e18;
struct segtree{
	static const int p2=1<<17;
	int val[p2*2]={};
	ll at(int x){
		ll ret=0;
		x+=p2;
		while(x){
			ret+=val[x];
			x/=2;
		}
		return ret;
	}
	void add(int a,int b,int l,int r,int k,int v){
		if(b<=l||r<=a) return;
		if(a<=l&&r<=b){
			val[k]+=v;
			return;
		}
		add(a,b,l,(l+r)/2,k*2,v);
		add(a,b,(l+r)/2,r,k*2+1,v);
	}
	void add(int a,int b,int v){
		add(a,b,0,p2,1,v);
	}
	int pos(){
		int ub=L+1,lb=-1;
		while(ub-lb>1){
			int m=(ub+lb)/2;
			if(at(m)>=0) ub=m;
			else lb=m;
		}
		return ub;
	}
} seg;
int main(){
	cin>>N>>L;
	rep(i,N) cin>>t[i]>>x[i];
	int le=0;
	rep1(i,N){
		if(i==N||t[i-1]!=t[i]){
			reverse(x+le,x+i);
			le=i;
		}
	}
	ll sum=0;
	rep(i,N){
		sum+=x[i];
		int p=seg.pos();
		seg.add(0,x[i],-1);
		seg.add(x[i],p,1);
//		show(x[i]);
//		show(p);
	}
	rep(i,L+1) sum+=seg.at(i);
	cout<<sum<<endl;
}

Submission Info

Submission Time
Task E - 花火
User sigma425
Language C++11 (GCC 4.9.2)
Score 160
Code Size 1310 Byte
Status AC
Exec Time 287 ms
Memory 2524 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 130 / 130
Status
AC × 3
AC × 45
AC × 95
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt, subtask1_33.txt, subtask1_34.txt, subtask1_35.txt, subtask1_36.txt, subtask1_37.txt, subtask1_38.txt, subtask1_39.txt, subtask1_40.txt, subtask1_41.txt, subtask1_42.txt
Subtask2 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt, subtask1_33.txt, subtask1_34.txt, subtask1_35.txt, subtask1_36.txt, subtask1_37.txt, subtask1_38.txt, subtask1_39.txt, subtask1_40.txt, subtask1_41.txt, subtask1_42.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt, subtask2_29.txt, subtask2_30.txt, subtask2_31.txt, subtask2_32.txt, subtask2_33.txt, subtask2_34.txt, subtask2_35.txt, subtask2_36.txt, subtask2_37.txt, subtask2_38.txt, subtask2_39.txt, subtask2_40.txt, subtask2_41.txt, subtask2_42.txt, subtask2_43.txt, subtask2_44.txt, subtask2_45.txt, subtask2_46.txt, subtask2_47.txt, subtask2_48.txt, subtask2_49.txt, subtask2_50.txt
Case Name Status Exec Time Memory
sample_01.txt AC 31 ms 980 KB
sample_02.txt AC 27 ms 916 KB
sample_03.txt AC 28 ms 864 KB
subtask1_01.txt AC 35 ms 1000 KB
subtask1_02.txt AC 30 ms 1048 KB
subtask1_03.txt AC 31 ms 1000 KB
subtask1_04.txt AC 35 ms 1068 KB
subtask1_05.txt AC 29 ms 1036 KB
subtask1_06.txt AC 30 ms 992 KB
subtask1_07.txt AC 30 ms 1036 KB
subtask1_08.txt AC 33 ms 1040 KB
subtask1_09.txt AC 34 ms 1068 KB
subtask1_10.txt AC 30 ms 1048 KB
subtask1_11.txt AC 31 ms 1048 KB
subtask1_12.txt AC 33 ms 1044 KB
subtask1_13.txt AC 39 ms 980 KB
subtask1_14.txt AC 28 ms 1048 KB
subtask1_15.txt AC 29 ms 944 KB
subtask1_16.txt AC 32 ms 1044 KB
subtask1_17.txt AC 33 ms 940 KB
subtask1_18.txt AC 32 ms 964 KB
subtask1_19.txt AC 32 ms 1044 KB
subtask1_20.txt AC 32 ms 1004 KB
subtask1_21.txt AC 29 ms 1048 KB
subtask1_22.txt AC 33 ms 952 KB
subtask1_23.txt AC 32 ms 1044 KB
subtask1_24.txt AC 32 ms 1044 KB
subtask1_25.txt AC 30 ms 980 KB
subtask1_26.txt AC 31 ms 1044 KB
subtask1_27.txt AC 31 ms 1012 KB
subtask1_28.txt AC 72 ms 928 KB
subtask1_29.txt AC 59 ms 932 KB
subtask1_30.txt AC 28 ms 1048 KB
subtask1_31.txt AC 31 ms 1044 KB
subtask1_32.txt AC 32 ms 1048 KB
subtask1_33.txt AC 33 ms 984 KB
subtask1_34.txt AC 31 ms 1040 KB
subtask1_35.txt AC 30 ms 924 KB
subtask1_36.txt AC 31 ms 992 KB
subtask1_37.txt AC 27 ms 1048 KB
subtask1_38.txt AC 28 ms 1048 KB
subtask1_39.txt AC 26 ms 1040 KB
subtask1_40.txt AC 28 ms 1044 KB
subtask1_41.txt AC 27 ms 980 KB
subtask1_42.txt AC 28 ms 1040 KB
subtask2_01.txt AC 284 ms 2480 KB
subtask2_02.txt AC 284 ms 2484 KB
subtask2_03.txt AC 284 ms 2484 KB
subtask2_04.txt AC 283 ms 2484 KB
subtask2_05.txt AC 283 ms 2480 KB
subtask2_06.txt AC 225 ms 2088 KB
subtask2_07.txt AC 166 ms 1840 KB
subtask2_08.txt AC 108 ms 1452 KB
subtask2_09.txt AC 134 ms 1716 KB
subtask2_10.txt AC 142 ms 1712 KB
subtask2_11.txt AC 158 ms 1756 KB
subtask2_12.txt AC 181 ms 1752 KB
subtask2_13.txt AC 247 ms 1836 KB
subtask2_14.txt AC 243 ms 2476 KB
subtask2_15.txt AC 246 ms 2480 KB
subtask2_16.txt AC 258 ms 2476 KB
subtask2_17.txt AC 272 ms 2524 KB
subtask2_18.txt AC 287 ms 2472 KB
subtask2_19.txt AC 114 ms 1712 KB
subtask2_20.txt AC 120 ms 1704 KB
subtask2_21.txt AC 134 ms 1716 KB
subtask2_22.txt AC 153 ms 1700 KB
subtask2_23.txt AC 226 ms 1712 KB
subtask2_24.txt AC 249 ms 2484 KB
subtask2_25.txt AC 251 ms 2468 KB
subtask2_26.txt AC 256 ms 2476 KB
subtask2_27.txt AC 261 ms 2412 KB
subtask2_28.txt AC 277 ms 2484 KB
subtask2_29.txt AC 221 ms 1948 KB
subtask2_30.txt AC 240 ms 2484 KB
subtask2_31.txt AC 257 ms 2524 KB
subtask2_32.txt AC 254 ms 2352 KB
subtask2_33.txt AC 269 ms 2480 KB
subtask2_34.txt AC 252 ms 2476 KB
subtask2_35.txt AC 148 ms 1628 KB
subtask2_36.txt AC 166 ms 1716 KB
subtask2_37.txt AC 226 ms 1840 KB
subtask2_38.txt AC 250 ms 2468 KB
subtask2_39.txt AC 243 ms 2480 KB
subtask2_40.txt AC 93 ms 1628 KB
subtask2_41.txt AC 125 ms 1716 KB
subtask2_42.txt AC 216 ms 1716 KB
subtask2_43.txt AC 261 ms 2472 KB
subtask2_44.txt AC 267 ms 2476 KB
subtask2_45.txt AC 219 ms 1712 KB
subtask2_46.txt AC 197 ms 1708 KB
subtask2_47.txt AC 211 ms 1712 KB
subtask2_48.txt AC 33 ms 1040 KB
subtask2_49.txt AC 28 ms 860 KB
subtask2_50.txt AC 32 ms 1040 KB