dp
文章平均质量分 75
我要满满的AC
不积跬步,无以至千里
展开
-
UVa10036 Divisibility
#include#includebool ans[10000][100];int t[10000];int main(){ freopen("t.txt","r",stdin); int T,n,k,i,j,u,v; scanf("%d",&T); while(T--) { scanf("%d%d",&n,&k原创 2014-07-19 17:13:16 · 400 阅读 · 0 评论 -
POJ1322 Chocolate dp
刚开始做这得时,dp方程很容易写出来。。。dp(原创 2014-08-04 20:52:27 · 471 阅读 · 0 评论 -
POJ2250 Compromise DP最长公共子序列
该题是一道最长公共子序列的DP原创 2014-08-11 00:16:47 · 354 阅读 · 0 评论 -
POJ1458 Common Subsequence DP
以前看这一题,没什么头绪。今天再看这一题,感觉好简单原创 2014-08-10 23:09:36 · 328 阅读 · 0 评论 -
第5周第一次练习,dp题。
For a string of n bits x1,x2,x3,...,Xn the adjacent bit count of the string (AdjBC(x)) is given byX1*X2 + X2*X3 + X3*X4 + ... + Xn-1 * Xnwhich counts the number of times a 1 bit is adjacent原创 2014-08-11 16:06:05 · 254 阅读 · 0 评论 -
HDU4599 Dice概率期望DP
这题有三个函数,F(N)表示有数字连续向上原创 2014-09-10 16:25:11 · 425 阅读 · 0 评论 -
HDU4035 Maze 概率DP+图
思路:列出状态转移方程,并设出其一般能原创 2014-09-10 21:32:41 · 374 阅读 · 0 评论 -
COJ1290 Random Integers 概率期望DP
DescriptionWe choose an integer K (K > 0). Then we generate N (N > 0) integers one by one randomly, each of them is in range [0, K - 1], and the appearing probabilities of each interger is the s原创 2014-08-14 13:33:37 · 327 阅读 · 0 评论 -
POJ3342 Party at Hali-Bula 树形DP
这题是问聚会时老板与员公不能同时出现的方案ov原创 2014-08-16 11:08:59 · 381 阅读 · 0 评论 -
hdu 1114 Piggy-Bank 完全背包
用滚动数组写好像写法很简洁,但这次我试着用二维数组写Orz...还真出了好多问题..所幸最后还是AC了...#include#include#include#define maxn 505int p[maxn],w[maxn];int n,m;int dp[maxn][10005];int min(int a,int b){ return a<b?a:b;}void out原创 2015-01-26 15:47:07 · 285 阅读 · 0 评论 -
uva 10237 Bishops 黑白染色处理
题意:在n*n行棋盘里放置k个棋子,要保证这些棋不在同一斜行,问有多少种放置方式。方法:黑白染色,黑白格子之间相互不影响。用dp[i][j]表示第i斜行放置j个棋子,c[i]表示第i斜行有多少棋子。#include#include#include#include#include#include#include#includeusing namespace std;#p原创 2015-07-29 09:41:21 · 313 阅读 · 0 评论 -
hdu5489 Removed Interval LIS
题意:移掉长度为L的区间后剩余数组的LIS#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef unsigned long long ll;const int N=1e5+10;const int INF=0原创 2015-10-03 11:24:37 · 353 阅读 · 0 评论 -
SPOJ154 Sweet and Sour Rock dp
看来DP得做得还是太少。。原创 2014-08-02 17:20:31 · 385 阅读 · 0 评论 -
ZOJ1425 Crossed Matchings dp
#include#includeint n1[101],n2[101];int d[101][101];int max(int a,int b){ if(a<b)return b; else return a;}int main(){ int T,t1,t2,i,j,k,x,y; scanf("%d",&T); while(T--) { scanf("%d%d",&原创 2014-07-25 12:58:35 · 382 阅读 · 0 评论 -
POJ1088 滑雪 dp
//一年#include#includeint h[100][100],r,c;int dx[4]={-1,0,1,0};int dy[4]={0,1,0,-1};int ans[100][100];int dp(int a,int b){ if(ans[a][b])return ans[a][b]; int x,y,s,ma=0; for(int i=0;i<4;i++)原创 2014-07-18 17:39:20 · 329 阅读 · 0 评论 -
codeforces229D. Towers
#include#includeint h[5001],sum[5001],d[5001];int main(){ //freopen("t.txt","r",stdin); int n,i,j,u,v; while(~scanf("%d",&n)) { sum[0]=0; for(i=1;i<=n;i++) { scanf("%d",&u); sum[i]原创 2014-07-19 21:10:41 · 438 阅读 · 0 评论 -
zoj1025 Wooden Sticks dp
上次在hdu做的这题,yongd原创 2014-07-21 15:26:28 · 278 阅读 · 0 评论 -
POJ2081 2081 Recaman's Sequence
#includeconst int maxn=500001;int a[maxn];bool vis[1<<30];int main(){ int k,i; a[0]=0;vis[0]=1; for(i=1;i<maxn;i++) if(a[i-1]-i>0&&!vis[a[i-1]-i]) { a[i]=a[i-1]-i; vis[a[i]]=1; }原创 2014-07-22 19:39:32 · 379 阅读 · 0 评论 -
ZOJ1276 Optimal Array Multiplication Sequence dp
#include#includeint r[15];int d[15][15],save[15][15];int dp(int i,int j){ if(d[i][j]!=0)return d[i][j]; if(i==j)return 0; int min=1<<30; for(int k=i;k<j;k++) { int t=dp(i,k)+dp(k+1,j)+r[i]原创 2014-07-23 10:01:50 · 345 阅读 · 0 评论 -
zoj1163 The Staircases
#includedouble dp[501][501];int main(){int n,i,j,k; for(i=1;idp[i][0]=0;dp[0][0]=1;for(i=0;i{for(k=1;kdp[i][k]=dp[i-k][k-1]+dp[i][k-1];for(k=i+1;kdp[i][k]=dp[i][i];}w原创 2014-07-22 09:33:41 · 582 阅读 · 0 评论 -
POJ1163 The Triangle简单dp
#includeint a[100][100];int max(const int a,const int b){ if(a>b)return a; else return b;}int main(){ int n; while(~scanf("%d",&n)) { for(int i=0;i<n;i++) for(int j=0;j<=i;j++) s原创 2014-07-22 19:54:12 · 382 阅读 · 0 评论 -
zoj1234 Chopsticks
#include#includeint d[5000][1010],a[5000];int min(const int a,const int b){ if(a<b)return a; else return b;}int main(){ int n,k,i,j,T; scanf("%d",&T); while(T--) { scanf("%d%d",&k,&n)原创 2014-07-22 19:09:52 · 498 阅读 · 0 评论 -
zoj1134 Strategic Game dp
废话不想多说,代码上都有注释。原创 2014-07-22 16:03:15 · 420 阅读 · 0 评论 -
ZOJ1366 Cash Machine 优化的dp
#include#includeint f[100001];int m[11],v[11];int max(int x,int y){ if(x<y)return y; else return x;}int main(){ freopen("t.txt","r",stdin); int cash,n,i,k,j; while(~scanf("%d%d",&cash,&n)原创 2014-07-23 17:08:53 · 332 阅读 · 0 评论 -
ZOJ1366 Cash Machine
这题是背包九讲中的多重背包问题(PS:其实我s原创 2014-07-23 16:25:13 · 405 阅读 · 0 评论 -
hdu 5117 Fluorescent dp
题意: 有n个灯,m个开关,每个开关控制着一些灯。求E(x^3)*(2^m) mod(1e9+7)的值。其中,x为亮着灯的数目。 数据范围: n,m<=50,, 方法:x=(x1+x2+..+xn),,x^3=(x1+x2+..+xn)(x1+x2+..+xn)(x1+x2+..+xn); 展开之后,则对x^3的值有贡献的是xi*xj*xk==1,当且仅当三者为都为1满足要求。 所以可考虑状原创 2015-10-23 16:26:22 · 460 阅读 · 0 评论