社区讨论

把自己的AC代码hack了

P13679 [IAMOI R2] 传奇模数参与者 5已保存回复 9

讨论操作

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

当前回复
9 条
当前快照
1 份
快照标识符
@mhjhautl
此快照首次捕获于
2025/11/04 02:33
4 个月前
此快照最后确认于
2025/11/04 02:33
4 个月前
查看原帖
输入:1000000000000000000
正确输出:919667211
我的输出:897271756
CPP
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;//给long long重新命名为ll
 
const ll MOD=998244353;//定义模数MOD=998244353,这是一个常用的质数变量 

signed main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
	cout.tie(0);
	ll n;
	cin>>n;
	/*
	计算n除以MOD的商d0
	d0表示有多少个完整的MOD区间再1~n之间 
	*/
	ll d0=n/MOD; 
	/*
	计算n除以MOD的余数r
	r表示最后一个不完整的MOD区间有多少个数 
	*/
	ll r=n%MOD;
	/*
	计算结果 
	注意: 
	1. d0 % MOD:商对MOD取模,防止溢出
	2.(r+1)%MOD:余数+1后对MOD取模,同样防止溢出
	3.两者相乘后再对MOD取模,确保结果在区间[0,MOD-1]范围内 
	*/
	ll ans=((d0%MOD) * ((r+1)%MOD)) %MOD;
	cout<<ans;
	return 0;
}
这是我的思路:https://www.luogu.com.cn/article/kv2bsp0f

回复

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

正在加载回复...