题解 | #分元宵#
分元宵
https://www.nowcoder.com/practice/0be3d626297a4c0aa99bf99d7cb888d5
把每个碗看成一次独立选择:一个元宵有“馅×皮”两部分可选,所以单个碗里一共有 种放法。总共有
个碗,因此答案就是
,最后对
取模即可。
void solve(){
ll s,t,p,q,m;cin>>s>>t>>p>>q>>m;
if(m==1){
cout<<0<<endl;
return;
}
ll a=1LL*(s%m)*(t%m)%m;
ll n=1LL*p*q;
cout<<qpow(a,n,m)<<endl;
}
快速幂部分:
ll qpow(ll a,ll b,ll mod=MOD){ll res=1;a%=mod;while(b){if(b&1)res=res*a%mod;a=a*a%mod;b>>=1;}return res;}
查看1道真题和解析