mirror of
https://gitcode.com/Zengtudor/alg2025.git
synced 2026-02-03 17:27:18 +00:00
refactor(P11362): 优化模运算代码以提高可读性
将重复的模运算提取为常量one和both,避免重复计算
This commit is contained in:
parent
3c2f4aef64
commit
5b166bcd0e
@ -20,6 +20,8 @@ std::unordered_set<int> s;
|
|||||||
sl void solve(){
|
sl void solve(){
|
||||||
s.clear();
|
s.clear();
|
||||||
std::cin>>n>>m>>v;
|
std::cin>>n>>m>>v;
|
||||||
|
const ll one = v*v%p;
|
||||||
|
const ll both = (one-v+1+p)%p;
|
||||||
for(ll i=1;i<=m;i++){
|
for(ll i=1;i<=m;i++){
|
||||||
std::cin>>x[i].c>>x[i].d;
|
std::cin>>x[i].c>>x[i].d;
|
||||||
s.insert(x[i].c);
|
s.insert(x[i].c);
|
||||||
@ -34,9 +36,9 @@ sl void solve(){
|
|||||||
ll ans=1;
|
ll ans=1;
|
||||||
for(ll i=1;i<n;i++){
|
for(ll i=1;i<n;i++){
|
||||||
if(s.count(i)&s.count(i+1)){
|
if(s.count(i)&s.count(i+1)){
|
||||||
ans=(ans*((v*v%p-v+1)%p)%p)%p;
|
ans=ans*both%p;
|
||||||
}else{
|
}else{
|
||||||
ans=ans*v%p*v%p;
|
ans=ans*one%p;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
std::cout<<ans<<"\n";
|
std::cout<<ans<<"\n";
|
||||||
|
|||||||
3
src/11/9/P2258.cpp
Normal file
3
src/11/9/P2258.cpp
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
int main(){
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user