日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

【洛谷5204】[USACO19JAN] Train Tracking 2 P(DP)

發布時間:2023/12/13 综合教程 36 生活家
生活随笔 收集整理的這篇文章主要介紹了 【洛谷5204】[USACO19JAN] Train Tracking 2 P(DP) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點此看題面

有一個值域為([1,10^9])的整數序列,給出每相鄰(k)個元素中的最小值,求原序列可能的個數。
(nle10^5)

(a_i)全相同時的(DP)

方便起見記(w=10^9-a_i)。

那也就是說,至多隔(k)個位置選擇一次(a_i),而不選(a_i)的時候有(w)種選法。

因此設(f_i)表示第(i)個位置選擇了的方案數,得出暴力轉移式:

[f_i=sum_{j=i-k}^{i-1}f_j imes w^{i-j-1}
]

我們發現轉移的系數是(w^{i-j-1}),因此考慮把(f_{i-1})乘上(w),發現:

[f_{i-1} imes w=sum_{j=i-k-1}^{i-2}f_j imes w^{i-j-1}
]

它和(f_i)只有(f_{i-k-1})和(f_{i-1})兩項不同,稍微補正一下即可:

[f_i=f_{i-1} imes (w+1)-f_{i-k-1} imes w^k
]

這樣就可以(O(n))去(DP)了。

(a_i)不相同時的分段拆解

對于(a_i)全相同的一段([i,j]),粗略考慮它在原序列中管轄的區間為([i,j+k-1]),長度為(j-i+k)。

但是,如果(a_{i-1}>a_i),說明(s_{i+k-1}=a_i),且(s_{isim i+k-2})肯定全都大于等于(a_{i-1}),因此當前段管轄區間大小減少(k)。

同理,如果(a_{j+1}>a_i),說明(s_j=a_i),且(s_{j+1sim j+k-1})肯定全都大于等于(a_{j+1}),因此當前段管轄區間大小減少(k)。

然后發現不同的管轄區間之間是獨立的,分別按照前面的方法(DP)然后把方案數相乘即可。

代碼:(O(n))

#include<bits/stdc++.h>
#define Tp template<typename Ty>
#define Ts template<typename Ty,typename... Ar>
#define Reg register
#define RI Reg int
#define Con const
#define CI Con int&
#define I inline
#define W while
#define N 100000
#define INF 1000000000
#define X 1000000007
using namespace std;
int n,k,a[N+5];I int QP(RI x,RI y) {RI t=1;W(y) y&1&&(t=1LL*t*x%X),x=1LL*x*x%X,y>>=1;return t;}
int f[N+5];I int DP(CI x,CI n)//動態規劃
{
	RI i,w=INF-x,p=QP(w,k);f[0]=f[1]=1;//初始化
	for(i=2;i<=n+1;++i) f[i]=(1LL*f[i-1]*(w+1)-(i>k?1LL*f[i-k-1]*p%X:0)+X)%X;return f[n+1];//利用f[i-1]*w高效轉移
}
int main()
{
	RI i,j,p;for(scanf("%d%d",&n,&k),i=1;i<=n-k+1;++i) scanf("%d",a+i);
	RI t=1,o;for(i=1;i<=n-k+1;i=j+1) {j=i;W(a[j+1]==a[i]) ++j;o=j-i+k-(a[i-1]>a[i])*k-(a[j+1]>a[i])*k,t=1LL*t*DP(a[i],o)%X;}//根據a[i]分段拆解
	return printf("%d
",t),0;
}

敗得義無反顧,弱得一無是處

總結

以上是生活随笔為你收集整理的【洛谷5204】[USACO19JAN] Train Tracking 2 P(DP)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩簧片| a在线免费 | 成年人晚上看的视频 | 国模无码国产精品视频 | 日韩激情图片 | 99热视| 国产三区在线成人av | 中国精品久久 | 91久久人澡人人添人人爽欧美 | 亚洲毛片视频 | 国产一级生活片 | 免费看片亚洲 | 夜夜躁狠狠躁日日躁 | 亚洲国产精品99 | 18视频网站在线观看 | 尤物综合网 | 97神马影院| 一级黄色片在线观看 | 她也啪在线视频 | 精品亚洲一区二区三区 | 印度午夜性春猛xxx交 | 在线免费观看a级片 | 日本熟妇一区二区三区四区 | 午夜视频在线观看一区 | 国产精品自产拍在线观看 | 成人亚洲视频 | 亚洲综合久久婷婷 | 久久精品国产99国产精品 | 国产乱人伦 | 日韩在线视频免费 | 欧美日韩精品在线视频 | 欧美一级黄视频 | 欧美亚洲日本一区 | 国产精品久久久久久妇女 | 幸福,触手可及 | 亚洲天堂男人的天堂 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 精品福利一区二区三区 | 华丽的外出在线观看 | 国产午夜精品理论片 | 久久av网址| 免费色网 | 成人综合社区 | 黄色一级片一级片 | 亚欧三级 | 日本猛少妇色xxxxx猛叫 | 国产精品无码一区二区三区免费 | 午夜精品久久久久久久无码 | 香蕉视频 | 欧美三日本三级少妇三级99观看视频 | 国产精品国产三级国产aⅴ无密码 | 日日干日日| 一区二区精品视频在线观看 | 日韩人妻精品在线 | 五月天激情四射 | 狠狠91| 成年人高清视频 | 无码成人精品区一级毛片 | 女女h百合无遮羞羞漫画软件 | 九九久久九九久久 | 丰满女人又爽又紧又丰满 | 三级做爰在线观看视频 | 最新国产一区 | 女人被男人躁得好爽免费视频 | 艳妇臀荡乳欲伦交换h漫 | 亚洲成av人在线观看 | 国产丰满大乳奶水在线视频 | 国产av不卡一区二区 | 国产一区二区啪啪啪 | 亚洲激情另类 | 97色资源| 色窝在线| 欧美影院一区二区 | 精品999久久久一级毛片 | 一区二区三区中文字幕 | 爱爱视频网站 | 黑人操日本女人视频 | 欧美亚洲国产一区二区三区 | 久久超碰精品 | 91色伦| 亚洲在线观看视频 | 超碰人人人人人人人 | 国产日韩精品中文字无码 | 玖玖热在线视频 | 一区二区在线观看av | 亚洲片国产一区一级在线观看 | 日韩污视频在线观看 | 成人动漫在线免费观看 | 亚洲自拍偷拍第一页 | 国产精品久久免费视频 | 两个小y头稚嫩紧窄h文 | 成人午夜视频在线观看 | 亚洲看片网站 | 亚洲精品国产一区二区 | 免费 成 人 黄 色 | 成人va视频 | 亚洲欧美系列 | 日日色综合 | www国产亚洲精品久久网站 |