国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

bzoj1485: [HNOI2009]有趣的數列

2019-11-06 06:20:15
字體:
來源:轉載
供稿:網友

傳送門 顯然當奇數位確定下來是,要么有確定解,要么無解。 于是我們可以腦補出一個dp F[I][J]:前i個奇數位位,末位是j的方案數。 暴力求解后發現是卡特蘭數(呵呵呵呵) 我們可以將一個奇數項的數看成入棧,偶數項的數看成出棧,則每一個合法的出棧入棧序對應一個合法解。(自己yy) 這樣就OK了 注:可以用質因數分解避免求乘法逆元。

uses math;var a,b,p:array [0..2000005] of longint; n,pp,i,j,x:longint; ans:int64;begin read(n,pp); for i:=2 to n*2 do begin if a[i]=0 then begin inc(p[0]); p[p[0]]:=i; a[i]:=p[0]; end; for j:=1 to p[0] do if (i*p[j]<=n*2) then a[i*p[j]]:=j else break; end; for i:=n+1 to n*2 do begin x:=i; while x<>1 do begin inc(b[a[x]]); x:=x div p[a[x]]; end; end; for i:=1 to n+1 do begin x:=i; while x<>1 do begin dec(b[a[x]]); x:=x div p[a[x]]; end; end; ans:=1; for i:=1 to p[0] do for j:=1 to b[i] do ans:=ans*p[i] mod pp; write(ans);end.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新乐市| 怀集县| 专栏| 含山县| 沧源| 乌拉特后旗| 姜堰市| 班戈县| 廉江市| 贵溪市| 遵义市| 宿松县| 东阿县| 包头市| 阿城市| 闸北区| 永修县| 同心县| 泰兴市| 镇安县| 都江堰市| 门头沟区| 定边县| 社旗县| 武威市| 黄浦区| 宝兴县| 饶阳县| 册亨县| 塔河县| 夏津县| 中江县| 临夏县| 建平县| 太仓市| 灵台县| 高阳县| 胶南市| 元谋县| 含山县| 青川县|