1965: [Ahoi2005]SHUFFLE 洗牌 - BZOJ
2014-05-22 21:08
393 查看
Description
View Code
var n,m,l,x,y:int64; function f(x,y:int64):int64; begin if y=0 then exit(1); f:=f(x,y>>1); f:=f*f mod(n+1); if y and 1=1 then f:=f*x mod(n+1); end; procedure extended(a,b:int64); var t:int64; begin if b=0 then begin l:=l div a; exit; end; extended(b,a mod b); t:=x; x:=y; y:=t-(a div b)*y; end; procedure main; begin read(n,m,l); m:=f(2,m); x:=1; y:=0; extended(m,n+1); x:=x*l; x:=x-trunc(x/(n+1))*(n+1); x:=(x+n+1)mod(n+1); writeln(x); end; begin main; end.
View Code
相关文章推荐
- [BZOJ1965][Ahoi2005]SHUFFLE 洗牌
- bzoj 1965: [Ahoi2005]SHUFFLE 洗牌
- BZOJ1965 [Ahoi2005]SHUFFLE 洗牌
- BZOJ 1965: [Ahoi2005]SHUFFLE 洗牌 快速幂 快速乘
- bzoj 1965: [Ahoi2005]SHUFFLE 洗牌
- bzoj1965: [Ahoi2005]SHUFFLE 洗牌
- bzoj 1965: [Ahoi2005]SHUFFLE 洗牌 (快速幂)
- 【bzoj1965】[Ahoi2005]SHUFFLE 洗牌
- 【bzoj1965】 [Ahoi2005]SHUFFLE 洗牌 欧拉定理
- bzoj1965 [Ahoi2005]SHUFFLE 洗牌
- BZOJ1965: [Ahoi2005]SHUFFLE 洗牌
- BZOJ1965: [Ahoi2005]SHUFFLE 洗牌
- [BZOJ1965][Ahoi2005]SHUFFLE 洗牌(数学相关)
- BZOJ 1965 AHOI2005 SHUFFLE 洗牌 数论
- 【逆元】【bzoj 1965】: [Ahoi2005]SHUFFLE 洗牌
- BZOJ 1965: [Ahoi2005]SHUFFLE 洗牌( 数论 )
- [BZOJ]1965: [Ahoi2005]SHUFFLE 洗牌 扩展欧几里得
- bzoj 1965: [Ahoi2005]SHUFFLE 洗牌
- bzoj1965 [Ahoi2005]SHUFFLE 洗牌
- BZOJ1965 [Ahoi2005]SHUFFLE 洗牌