![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dp
文章平均质量分 50
wxfwxf328
这个作者很懒,什么都没留下…
展开
-
hdu 1864 最大报销额 【DP】
#include #include using namespace std; const int maxn=3000000+10; int dp[maxn],v[100]; int main() { int n,m,cnt; double a[3],q; while(cin>>q>>n&&n) { cnt=0; while(n--)原创 2012-01-25 12:04:43 · 705 阅读 · 0 评论 -
hdu 3555 Bomb【数位DP】
第一次接触数位DP #include using namespace std; long long dp[20][3]={0,1,0},d[20][3]; int main() { for(int i=1;i<20;i++) { dp[i][0]=10*dp[i-1][0]+dp[i-1][2];//含49 dp[i][1]=9*dp[i-1][1原创 2012-02-13 22:03:32 · 1009 阅读 · 0 评论 -
POJ 3211 Washing Clothes【01背包+STL】
洗每种衣服时间dp[sum[i]-dp[sum[i]>>1]; #include #include #include #include using namespace std; int dp[1<<17]; int main() { int n,m;cin.sync_with_stdio(false); string str; while(cin>>n>>m&&m&&n)原创 2012-02-06 14:46:29 · 586 阅读 · 0 评论 -
hdu 3415 Max Sum of Max-K-sub-sequence【单调队列】
#include #include using namespace std; const int maxn=100000+10; int sum[maxn<<1],que[maxn<<1]; void read(int &d) { char ch;bool flag=0; while(ch=getchar(),(ch>'9'||ch<'0')&&ch!='-'); ch==原创 2012-02-04 14:26:17 · 533 阅读 · 0 评论 -
poj 1159 Palindrome 【DP】
dp[i][j]=dp[i+1][j-1],(s[i]==s[j]) dp[i][j]=min(dp[i+1][j],dp[i][j-1])+1,(s[i]!=s[j])DP+Short数组:Problem: 1159 User: wxfwxf328 Memory: 40716K Time: 391MS Language: C++ Result: Accepted Source Code原创 2012-01-31 17:19:57 · 489 阅读 · 0 评论 -
poj 2181 Jumping Cows 【简单DP】
//dp[i][0]=max(dp[i-1][1]-a[i],dp[i-1][0]); //dp[i][1]=max(dp[i-1][0]+a[i],dp[i-1][1]); #include #include using namespace std; const int maxn=200000; int dp[maxn][2],a[maxn]; int main() { int p;原创 2012-01-28 19:20:58 · 451 阅读 · 0 评论 -
poj 2559 hdu 1506 Largest Rectangle in a Histogram
#include using namespace std; const int maxn=100000+10; int a[maxn],b[maxn],c[maxn];//a[i]:高度 b[i]:左边小于a[i]高度的第一个 c[i]:右边小于a[i]高度第一个 inline void read(int &d) { char ch; while(ch=getchar(),ch>原创 2012-01-25 14:38:29 · 796 阅读 · 0 评论 -
hdu 1231最大连续子序列 【DP】
//dp[i] = max(dp[i-1]+a[i],dp[i]) = a[i]+dp[i-1]<0?0:dp[i-1]; //max=a[i]+max<0?0:max; #include using namespace std; int a[10010]; inline void read(int &d) { char ch; int flag=1; while(ch=g原创 2012-01-25 12:46:21 · 619 阅读 · 0 评论 -
hdu 2955 Robberies 【dp】 01背包
#include using namespace std; const int maxn=10000+10; int m[maxn]; double p[maxn],dp[maxn]; int main() { int t,n,sum; double p0; cin.sync_with_stdio(false); cin>>t; while(t--)原创 2012-01-25 12:03:18 · 541 阅读 · 0 评论 -
poj 1157 LITTLE SHOP OF FLOWERS 【简单DP】
//dp[i][j]=max(dp[i][j-1]+a[i][j],dp[i][j-1]); #include #include using namespace std; const int inf=0x3f3f3f3f; int dp[110][110]; int main() { int n,m,tmp,ans=-inf; scanf("%d%d",&n,&m); f原创 2012-01-28 18:10:49 · 509 阅读 · 0 评论 -
hdu 1003 Max Sum【DP】 0MS 248K
//dp[i] = max(dp[i-1]+a[i],dp[i]) = a[i]+dp[i-1]<0?0:dp[i-1]; //max=a[i]+max<0?0:max; #include using namespace std; inline void read(int &d) { char ch; int flag=1; while(ch=getchar(),ch=='原创 2012-01-25 13:15:29 · 810 阅读 · 2 评论 -
UVA 5811 Cards 数学期望DP
YM一下zyc,瞬间拍完1A a的期望=sum(a的子状态期望*a的子状态的概率)。 #include #include #include using namespace std; double dp[15][15][15][15][5][5]; //期望 bool vis[15][15][15][15][5][5]; int e[5]; inline double min(doubl原创 2012-05-02 22:04:58 · 1768 阅读 · 0 评论