/*在数轴上有0-N的位置
从0出发每次可以向右走
2
23
233步*/ // 1 总共的方案数 f[i]=f[i-]+f[i-]+f[i-]; f[]=;
for (int a=;a<=n;a++)
{
if (a>=) f[a]+=f[a-];
if (a>=) f[a]+=f[a-];
if (a>=) f[a]+=f[a-];
}
printf("%d\n",f[n]); // 2 考虑恰好t次到达时
//dp 题 可以考虑 每多一个条件 数组就多一维;所以,开二维数组
//f[i][j] 表示 用 j 步走了i种方案 f[i][j]=f[i-][j-]+f[i-][j-]+f[i-][j-]; f[][]=;
for (int a=;a<=n;a++)
for (int b=;b<=t;b++)
{
if (a>=) f[a][b]+=f[a-][b-];
if (a>=) f[a][b]+=f[a-][b-];
if (a>=) f[a][b]+=f[a-][b-];
}
printf("%d\n",f[n][t]);
int ans=;
for (int a=;a<=t;a++)
ans+=f[n][a];
printf("%d\n",ans); // 3 考虑小于t次
//将
f[n][]+f[n][]+....f[n][t]; //考虑最多走r步233
//so 要再加一维,变成三维数组
//f[i][j][k] 表示走到 i点,公用j步,走233用了k步 f[i][j][k]=f[i-][j-][k]+ f[i-][j-][k]+ f[i-][j-][k-];
/*
(N,M)的方格图
从(0,0)开始
只能朝右或上走
问走到(N,M)的方案数*/ //将每个点的左边点和下边点相加 f[n][m]=f[n-][m]+f[n][m-]; //考虑有k个点(x,y)不能走
//定义布尔数组记录每个不能坐的点
每次设f[x][y]=,并加以判断; //2.考虑每个坑只能掉一次:
if(不是坑) F[i][j][k]=f[i-][j][k]+f[i][j-][k]; else if(是坑) F[i][j][]=f[i-][j][]-f[i][j-][]; #include<iostream>
using namespace std;
int main()
{
int n,i,j,a[][];
cin>>n;
for (i=; i<=n; i++)
for (j=; j<=i; j++)
cin>>a[i][j]; //输入数字三角形的值
for (i=n-; i>=; i--)
for (j=; j<=i; j++)
{
if (a[i+][j]>=a[i+][j+])
a[i][j]+=a[i+][j]; //路径选择
else a[i][j]+=a[i+][j+];
}
cout<<a[][]<<endl;
} int fib(int a)
{
if (!a) return ;
if (a==) return ;
if (g[a]) return f[a];
g[a]=true;
f[a]=fib(a-)+fib(a-);
return f[a];
}
数字三角形问题,使得答案对p取模最大? F[i][j][k] 表示走到第i行第j列 使得答案模p是否可行 F[i][j][k]=f[i+][j][k-v[i][j]]
Or
F[i+][j+][k-v[i][j]]
**********代码: for (int a=;a<=n;a++)
f[n][a][v[n][a]%p]=true;
for (int a=n-;a>=;a--)
for (int b=;b<=a;b++)
for (int c=;c<p;c++)
f[a][b][c]=
f[a+][b][(c-v[a][b]+p)%p] ||
f[a+][b+][(c-v[a][b]+p)%p];
int ans;
for (int a=p-;a>=;a--)
if (f[][][a])
{
ans=a;
break;
} //***********区间DP******** /*合并石子 每次选择相邻两堆 代价为两堆石子和 问最小总代价 (第一层for循环一定要正着写) 因为后一层循环需要前一层循环的数据 */ F[l][r]=min(f[l][k]+f[k+][r]+sum[l][r]) /*矩阵乘法
自定义顺序
使得运算次数最少*/ //F[i][j] 表示搞定[I,j]的最小代价
F[i][j] = min(f[i][k]+f[k][j+]+cost(I,k,j))

dp洋洋散散的知识+code的更多相关文章

  1. (DP 雷格码)Gray code -- hdu -- 5375

    http://acm.hdu.edu.cn/showproblem.php?pid=5375 Gray code Time Limit: 2000/1000 MS (Java/Others)    M ...

  2. DP较为完整的知识

    数位DP 这类题,才刚刚接触,记得去年网络赛,就有道这样的题,我完全不会, 对于这类题基本方法是,是利用数的位数来构造转移方程. 下面给出两篇论文的链接: <数位计数问题解法研究> < ...

  3. 【BZOJ 3925】[Zjoi2015]地震后的幻想乡 期望概率dp+状态压缩+图论知识+组合数学

    神™题........ 这道题的提示......(用本苣蒻并不会的积分积出来的)并没有 没有什么卵用 ,所以你发现没有那个东西并不会 不影响你做题 ,然后你就可以推断出来你要求的是我们最晚挑到第几大的 ...

  4. 【DP入门到入土】

    DP例题较多,可以根据自己需求食用~ update:下翻有状压DP入门讲解,也只有讲解了(逃~ DP的实质,就是状态的枚举. 一般用DP解决的问题,都是求计数或最优问题,所以这类问题,我们也可以用搜索 ...

  5. dp斜率优化

    算法-dp斜率优化 前置知识: 凸包 斜率优化很玄学,凭空讲怎么也讲不好,所以放例题. [APIO2014]序列分割 [APIO2014]序列分割 给你一个长度为 \(n\) 的序列 \(a_1,a_ ...

  6. 插头dp

    插头dp 感受: 我觉得重点是理解,算法并不是直接想出怎样由一种方案变成另一种方案.而是方案本来就在那里,我们只是枚举状态统计了答案. 看看cdq的讲义什么的,一开始可能觉得状态很多,但其实灰常简单 ...

  7. POJ 1742 Coins DP 01背包

    dp[i][j]表示前i种硬币中取总价值为j时第i种硬币最多剩下多少个,-1表示无法到达该状态. a.当dp[i-1][j]>=0时,dp[i][j]=ci; b.当j-ai>=0& ...

  8. 插头DP题目泛做(为了对应WYD的课件)

    题目1:BZOJ 1814 URAL 1519 Formula 1 题目大意:给定一个N*M的棋盘,上面有障碍格子.求一个经过所有非障碍格子形成的回路的数量. 插头DP入门题.记录连通分量. #inc ...

  9. HDU 1176 免费馅饼:dp

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1176 题意: 横坐标范围为[0,10],你在第0秒站在坐标为5的地方. 在接下来的一段时间内,会有n个 ...

随机推荐

  1. POJ2043 Area of Polygons

    Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 1020   Accepted: 407 Description Yoko's ...

  2. NYOJ 925 国王的烦恼 (并查集)

    题目链接 描述     C国由n个小岛组成,为了方便小岛之间联络,C国在小岛间建立了m座大桥,每座大桥连接两座小岛.两个小岛间可能存在多座桥连接.然而,由于海水冲刷,有一些大桥面临着不能使用的危险.如 ...

  3. 大聊PYthon----生成器

    再说迭代器与生成器之前,先说一说列表生成式 列表生成式 什么是列表生成式呢? 这个非常简单! 先看看普通青年版的! >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, ...

  4. win8扁平风格的物流公司网站后台管理模板——后台

    链接:http://pan.baidu.com/s/1o79Zp2M 密码:tqrz

  5. [转载]PM管理技巧

      产品经理的沟通策略 2016年10月11日/分类: 文章 /编辑: Amy 产品经理处于沟通枢纽的位置,工作中需要跟各种岗位的人打交道,比如:领导.开发.运营.客户.用户.合作伙伴… 沟通能力是产 ...

  6. docker 升级后,配置 idea 连接 docker

    [root@A01-R02-I188-87 ~]# docker version Client: Version: 18.06.1-ce API version: 1.24 Go version: g ...

  7. CounterBreach安装测试的全部过程

    CounterBreach安装测试的全部过程 1安装数据库审计的网关 Admin进入 Impcfg初始化 选择网关 是否替换另一个网关? 否 是否改变默认管理口 设置管理口地址 192.168.1.2 ...

  8. MySQL数据库设置为只读及测试【转】

    转自 mysql只读模式的设置方法与实验 - yumushui的专栏 - CSDN博客http://blog.csdn.net/yumushui/article/details/41645469 在M ...

  9. php cache类代码(php数据缓存类)

    如果访问量大的话会给数据库造成很大的负担,所以对于变化不经常的内容要做好php 数据cache(缓存)是十分必要的,我做了一个简单的php“文件缓存”的类,希望对大家有所帮助. 思路是这样的: 对于一 ...

  10. [ python ] 进程的操作

    目录 (见右侧目录栏导航)- 1. 前言- 2. multiprocess模块- 2.1 multiprocess.Process模块    - 2.2 使用Process模块创建进程    - 2. ...