Submission #881996


Source Code Expand

#include <bits/stdc++.h>

#define _overload(_1,_2,_3,name,...) name
#define _rep(i,n) _range(i,0,n)
#define _range(i,a,b) for(int i=int(a);i<int(b);++i)
#define rep(...) _overload(__VA_ARGS__,_range,_rep,)(__VA_ARGS__)

#define _rrep(i,n) _rrange(i,n,0)
#define _rrange(i,a,b) for(int i=int(a)-1;i>=int(b);--i)
#define rrep(...) _overload(__VA_ARGS__,_rrange,_rrep,)(__VA_ARGS__)

#define _all(arg) begin(arg),end(arg)
#define uniq(arg) sort(_all(arg)),(arg).erase(unique(_all(arg)),end(arg))
#define getidx(ary,key) lower_bound(_all(ary),key)-begin(ary)
#define clr(a,b) memset((a),(b),sizeof(a))
#define popcount(n) (__builtin_popcountll(n))

using namespace std;

template<class T>bool chmax(T &a, const T &b) { return (a<b)?(a=b,1):0;}
template<class T>bool chmin(T &a, const T &b) { return (b<a)?(a=b,1):0;}

using ll=long long;
using R=long double;
const R EPS=1e-9; // [-1000,1000]->EPS=1e-8 [-10000,10000]->EPS=1e-7
inline int sgn(const R& r){return(r > EPS)-(r < -EPS);}
inline R sq(R x){return sqrt(max<R>(x,0.0));}

const int dx[8]={1,0,-1,0,1,-1,-1,1};
const int dy[8]={0,1,0,-1,1,1,-1,-1};

// Problem Specific Parameter:


const int m=1<<17;
ll val[2*m];

void update(int l, int r, int x) {
 	for (l += m, r += m; l < r; l >>= 1, r >>= 1) {
		if(l&1) val[l++]+= x;
		if(r&1) val[--r]+= x;
  	}
}

int at(int p) {
 	int ret = 0;
 	for(p += m; p > 0; p >>= 1) ret += val[p];
	return ret;
}

int find_positive(int len){
	int l=-1,r=len+1;
	while(r-l>1){
		const int mid=(l+r)/2;
		if(at(mid)<=0)
			l=mid;
		else
			r=mid;
	}
	return r;
}


ll p[100010],t[100010];

int main(void){
	int n,l;
	cin >> n >> l;
	rep(i,n) cin >> t[i] >> p[i];

	rep(i,n){
		int to=i;
		while(to<n && t[i]==t[to]) to++;
		reverse(p+i,p+to);
		reverse(t+i,t+to);
		i=to-1;
	}

	ll ans=0LL;
	rep(i,n){
		ans+=p[i];
		
		update(0,p[i],-1);
		update(p[i],l+1,+1);

		int pos=find_positive(l);
		update(pos,l+1,-1);
	}

	rep(i,l) ans+=at(i);
	cout << ans << endl;
	return 0;
}

Submission Info

Submission Time
Task E - 花火
User Hec
Language C++11 (GCC 4.9.2)
Score 160
Code Size 2052 Byte
Status AC
Exec Time 224 ms
Memory 3960 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 25 ms 788 KB
sample_02.txt AC 24 ms 920 KB
sample_03.txt AC 25 ms 916 KB
subtask1_01.txt AC 28 ms 792 KB
subtask1_02.txt AC 28 ms 800 KB
subtask1_03.txt AC 28 ms 792 KB
subtask1_04.txt AC 27 ms 796 KB
subtask1_05.txt AC 28 ms 800 KB
subtask1_06.txt AC 27 ms 916 KB
subtask1_07.txt AC 27 ms 800 KB
subtask1_08.txt AC 29 ms 924 KB
subtask1_09.txt AC 28 ms 916 KB
subtask1_10.txt AC 28 ms 792 KB
subtask1_11.txt AC 28 ms 800 KB
subtask1_12.txt AC 27 ms 916 KB
subtask1_13.txt AC 25 ms 912 KB
subtask1_14.txt AC 27 ms 804 KB
subtask1_15.txt AC 27 ms 800 KB
subtask1_16.txt AC 27 ms 800 KB
subtask1_17.txt AC 28 ms 796 KB
subtask1_18.txt AC 28 ms 804 KB
subtask1_19.txt AC 27 ms 804 KB
subtask1_20.txt AC 28 ms 804 KB
subtask1_21.txt AC 30 ms 928 KB
subtask1_22.txt AC 27 ms 932 KB
subtask1_23.txt AC 28 ms 804 KB
subtask1_24.txt AC 28 ms 804 KB
subtask1_25.txt AC 27 ms 792 KB
subtask1_26.txt AC 27 ms 804 KB
subtask1_27.txt AC 26 ms 796 KB
subtask1_28.txt AC 32 ms 920 KB
subtask1_29.txt AC 27 ms 800 KB
subtask1_30.txt AC 27 ms 932 KB
subtask1_31.txt AC 28 ms 800 KB
subtask1_32.txt AC 28 ms 804 KB
subtask1_33.txt AC 28 ms 800 KB
subtask1_34.txt AC 28 ms 796 KB
subtask1_35.txt AC 27 ms 804 KB
subtask1_36.txt AC 26 ms 928 KB
subtask1_37.txt AC 25 ms 804 KB
subtask1_38.txt AC 25 ms 804 KB
subtask1_39.txt AC 25 ms 812 KB
subtask1_40.txt AC 25 ms 800 KB
subtask1_41.txt AC 25 ms 800 KB
subtask1_42.txt AC 25 ms 804 KB
subtask2_01.txt AC 221 ms 3872 KB
subtask2_02.txt AC 219 ms 3880 KB
subtask2_03.txt AC 219 ms 3868 KB
subtask2_04.txt AC 224 ms 3868 KB
subtask2_05.txt AC 218 ms 3880 KB
subtask2_06.txt AC 171 ms 3232 KB
subtask2_07.txt AC 130 ms 2600 KB
subtask2_08.txt AC 101 ms 1828 KB
subtask2_09.txt AC 122 ms 2336 KB
subtask2_10.txt AC 121 ms 2332 KB
subtask2_11.txt AC 131 ms 2336 KB
subtask2_12.txt AC 145 ms 2344 KB
subtask2_13.txt AC 189 ms 2460 KB
subtask2_14.txt AC 180 ms 3876 KB
subtask2_15.txt AC 188 ms 3856 KB
subtask2_16.txt AC 192 ms 3884 KB
subtask2_17.txt AC 196 ms 3868 KB
subtask2_18.txt AC 213 ms 3884 KB
subtask2_19.txt AC 91 ms 2340 KB
subtask2_20.txt AC 93 ms 2336 KB
subtask2_21.txt AC 103 ms 2344 KB
subtask2_22.txt AC 115 ms 2340 KB
subtask2_23.txt AC 166 ms 2336 KB
subtask2_24.txt AC 201 ms 3880 KB
subtask2_25.txt AC 201 ms 3876 KB
subtask2_26.txt AC 205 ms 3960 KB
subtask2_27.txt AC 205 ms 3884 KB
subtask2_28.txt AC 214 ms 3884 KB
subtask2_29.txt AC 164 ms 2580 KB
subtask2_30.txt AC 184 ms 3868 KB
subtask2_31.txt AC 195 ms 3880 KB
subtask2_32.txt AC 200 ms 3620 KB
subtask2_33.txt AC 209 ms 3880 KB
subtask2_34.txt AC 190 ms 3880 KB
subtask2_35.txt AC 119 ms 2340 KB
subtask2_36.txt AC 130 ms 2340 KB
subtask2_37.txt AC 174 ms 2464 KB
subtask2_38.txt AC 204 ms 3872 KB
subtask2_39.txt AC 180 ms 3880 KB
subtask2_40.txt AC 88 ms 2340 KB
subtask2_41.txt AC 112 ms 2336 KB
subtask2_42.txt AC 162 ms 2340 KB
subtask2_43.txt AC 203 ms 3872 KB
subtask2_44.txt AC 213 ms 3864 KB
subtask2_45.txt AC 168 ms 2332 KB
subtask2_46.txt AC 147 ms 2336 KB
subtask2_47.txt AC 171 ms 2336 KB
subtask2_48.txt AC 29 ms 924 KB
subtask2_49.txt AC 26 ms 920 KB
subtask2_50.txt AC 27 ms 920 KB