真的值一个绿色吗
查看原帖
真的值一个绿色吗
416549
Kao_Potato楼主2022/10/14 14:25

裸差分就过了

特判一下环就行了呀(题解也有

#include <cstdio>
#include <iostream>
using namespace std;
typedef long long ll;
ll sn,pn,s[1000005],ans=0;
int main(){
	scanf("%lld%lld",&sn,&pn);
	for(int i=0;i<pn;i++){
		ll b,e,p;
		scanf("%lld%lld%lld",&b,&e,&p);
		if(b<e){
			s[b]+=p;
			s[e]-=p;
		}else{
			s[b]+=p;
			s[1]+=p;
			s[e]-=p;
		}
	}
	for(int i=1;i<=sn;i++){
		s[i]+=s[i-1];
		if(s[i]%36==0){
			ans=max(ans,s[i]/36);
		}else{
			ans=max(ans,s[i]/36+1);
		}
	}
	printf("%lld",ans);
	return 0;
}
2022/10/14 14:25
加载中...