제출 #1330969

#제출 시각아이디문제언어결과실행 시간메모리
1330969boclobanchatSails (IOI07_sails)C++20
5 / 100
19 ms1400 KiB
#include<bits/stdc++.h>
using namespace std;
const int MAXN=1e5+5;
int pref[MAXN];
pair<int,int> A[MAXN];
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int n;
    cin>>n;
    for(int i=1;i<=n;i++) cin>>A[i].first>>A[i].second;
    sort(A+1,A+n+1,greater< pair<int,int> >());
    int f=0;
    for(int i=1;i<=n;i++)
    {
    	if(f>=A[i].second) pref[f]--,pref[f-A[i].second]++,f-=A[i].second;
    	else
    	{
    		int g=A[i].second-f;
    		pref[f]--,pref[0]++,f=A[i].first,pref[f]--,pref[f-g]++,f-=g;
		}
	}
	long long ans=0;
	for(int i=0;i<1e5;i++)
	{
		if(i) pref[i]+=pref[i-1];
		ans+=1LL*pref[i]*(pref[i]-1)/2;
	}
	cout<<ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...