社区讨论

到底应该怎么%MOD啊

P7813参与者 5已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mlz9co2m
此快照首次捕获于
2026/02/23 22:14
2 周前
此快照最后确认于
2026/02/25 18:50
2 周前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
#define int unsigned long long
const int MOD=1e9+7;
int n,k;
int ans;
signed main(){
	int T;
	cin>>T;
	while(T--){
		cin>>n>>k;
		int las=(1+n)*n/2,las2=las-n;
		las%=MOD,las2%=MOD,k%=MOD;
		if(k%2==1){
			ans=(((las+las-k/2)%MOD)*(k/2+1)/2)%MOD;
			//cout<<ans<<endl;
			ans+=((las2+las2-k/2+1)%MOD)*(k/2)/2;
			ans%=MOD;
		}
		else{
			ans=(((las+las-k/2+1)%MOD)*k/4)%MOD;
			ans+=((las2+las2-k/2+1)%MOD)*k/4;
			ans%=MOD;
		}
		cout<<ans<<endl;
	}
	return 0;
}
只能过第一个subtask
貌似被卡MOD了

回复

5 条回复,欢迎继续交流。

正在加载回复...