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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

poj 3042

發(fā)布時(shí)間:2025/5/22 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 poj 3042 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

經(jīng)典dp。

代碼:

#include<iostream> #include<fstream>using namespace std;int a[1010]; int dp[1010][1010][2]; int v[1010][1010][2];int cmp(const void *a,const void *b){return *(int*)a-*(int*)b; }int n,m;int solve(int s,int t,int f){int i,j,k;if(v[s][t][f]) return dp[s][t][f];v[s][t][f]=1;if(f==0){if(s==1&&t>n){dp[s][t][f]=0;return 0;}i=-1;j=-1;if(s>1)i=solve(s-1,t,0);if(t<=n)j=solve(s-1,t,1);if(i!=-1&&j!=-1)dp[s][t][f]=min(i+(a[s]-a[s-1])*(s-1+n-t+1),j+(a[t]-a[s])*(s-1+n-t+1));if(i==-1)dp[s][t][f]=j+(a[t]-a[s])*(s-1+n-t+1);if(j==-1)dp[s][t][f]=i+(a[s]-a[s-1])*(s-1+n-t+1);return dp[s][t][f];}else{if(t==n&&s<1){dp[s][t][f]=0;return 0;}i=-1;j=-1;if(t<n) i=solve(s,t+1,1);if(s>=1) j=solve(s,t+1,0);if(i!=-1&&j!=-1)dp[s][t][f]=min(i+(a[t+1]-a[t])*(s+n-t),j+(a[t]-a[s])*(s+n-t));if(i==-1)dp[s][t][f]=j+(a[t]-a[s])*(s+n-t);if(j==-1)dp[s][t][f]=i+(a[t+1]-a[t])*(s+n-t);return dp[s][t][f];}}void read(){ // ifstream cin("in.txt");int i,j,k;cin>>n>>m;a[1]=m;for(i=2;i<=n+1;i++)cin>>a[i];n++;qsort(a+1,n,sizeof(int),cmp);for(i=1;i<=n;i++)if(a[i]==m)break;if(i<n){solve(i,i+1,0);cout<<dp[i][i+1][0]<<endl;}else{solve(i-1,i,1);cout<<dp[i-1][i][1]<<endl;} }int main(){read();return 0; }

轉(zhuǎn)載于:https://www.cnblogs.com/zhaozhe/archive/2011/05/07/2039783.html

總結(jié)

以上是生活随笔為你收集整理的poj 3042的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。