国产探花免费观看_亚洲丰满少妇自慰呻吟_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.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜昌市| 乌什县| 衡阳市| 开封县| 社旗县| 涡阳县| 沁阳市| 洮南市| 克什克腾旗| 永修县| 宾阳县| 定安县| 黑水县| 玛多县| 西乌| 庆阳市| 镇康县| 大宁县| 大理市| 崇义县| 葫芦岛市| 徐闻县| 桐庐县| 得荣县| 广河县| 内江市| 蓝田县| 浠水县| 鄯善县| 吉安市| 遂溪县| 醴陵市| 砚山县| 绍兴县| 延吉市| 腾冲县| 连州市| 友谊县| 易门县| 三门峡市| 临猗县|