4个点TLE求助
查看原帖
4个点TLE求助
942220
cyyzliangyuhan楼主2024/3/17 10:36
#include<bits/stdc++.h>
using namespace std;
struct Node{
	long long t,val;
}a[100010];
long long n,sum;
bool cmp(Node x,Node y){
    return x.val<y.val;
}
bool cmp1(Node x,Node y){
	return x.t<y.t;
}
int main(){
	scanf("%lld",&n);
	for(int i=1;i<=n;i++) scanf("%lld%lld",&a[i].t,&a[i].val);
	long long i=n;
	sort(a+1,a+1+n,cmp1);
	while(i>=1){
		long long k=i;
		while(a[k].t==a[k-1].t) k--;
		long long time=a[k].t-a[k-1].t;
		sort(a+k,a+n+1,cmp);
		for(int j=n;j>n-time;j--){
			sum+=a[j].val;
			a[j].val=0;
		}
		i=k-1;
	}
	printf("%lld\n",sum);
	return 0;
}
2024/3/17 10:36
加载中...