【bzoj3997】[TJOI2015]组合数学 dp
来源:互联网 发布:高潮是什么体验 知乎 编辑:程序博客网 时间:2024/05/22 08:18
非常奇怪的题
第一想法是最小流,显然不可行
用到一个性质:如果(i,j)与(i',j'),仅当(i',j')在(i,j)的左下方时,(i,j)无法到达(i',j')
那么把矩阵左右翻转,条件变成了在i和j的右下方时才可以选
那就可以dp了
dp[i][j]表示(1,1)~(i,j)这个矩阵中的答案
dp[i][j]=max(dp[i-1][j-1]+a[i][j],max(dp[i-1][j],dp[i][j-1]))
第一想法是最小流,显然不可行
用到一个性质:如果(i,j)与(i',j'),仅当(i',j')在(i,j)的左下方时,(i,j)无法到达(i',j')
那么把矩阵左右翻转,条件变成了在i和j的右下方时才可以选
那就可以dp了
dp[i][j]表示(1,1)~(i,j)这个矩阵中的答案
dp[i][j]=max(dp[i-1][j-1]+a[i][j],max(dp[i-1][j],dp[i][j-1]))
感觉怪怪的,考场上能想出来的受我一拜
乱七八糟的
#include<cstdio>#include<cstring>#include<cstdlib>#include<cmath>#include<algorithm>#include<iostream>#define maxn 1010using namespace std;int a[maxn][maxn];long long dp[maxn][maxn];int n,m,T;int main(){scanf("%d",&T);while (T--){memset(dp,0,sizeof(dp));scanf("%d%d",&n,&m);for (int i=1;i<=n;i++) for (int j=m;j>=1;j--) scanf("%d",&a[i][j]);for (int i=1;i<=n;i++) for (int j=1;j<=m;j++) dp[i][j]=max((long long)dp[i-1][j-1]+a[i][j],max(dp[i-1][j],dp[i][j-1]));printf("%lld\n",dp[n][m]);}return 0;}
0 0
- [BZOJ3997]TJOI2015组合数学|DP
- 【bzoj3997】【TJOI2015】【组合数学】【dp】
- 【bzoj3997】[TJOI2015]组合数学 dp
- bzoj3997 [TJOI2015]组合数学 dp+Dilworth定理
- 【bzoj3997】[TJOI2015]组合数学
- 【bzoj3997】[TJOI2015]组合数学
- 【BZOJ3997】【TJOI2015】组合数学
- 【bzoj3997】[TJOI2015]组合数学
- bzoj3997 [TJOI2015]组合数学
- BZOJ3997: [TJOI2015]组合数学 解题报告
- bzoj3997 组合数学
- 3997: [TJOI2015]组合数学 DP Dilworth定理
- bzoj 3997: [TJOI2015]组合数学 dp
- 【BZOJ3997】组合数学,总之是DP就对了
- bzoj3997 组合数学 递推
- [BZOJ3997][TJOI2016]组合数学 平面图
- 3997: [TJOI2015]组合数学
- 3997: [TJOI2015]组合数学
- Python字符串操作
- leetcode171.[math] Excel Sheet Column Number
- Hdu 5016 Baby Ming and Matrix games【dfs】
- 1002. A+B for Polynomials (25)
- 创建型模式 --- 建造者模式(Builder)
- 【bzoj3997】[TJOI2015]组合数学 dp
- 292Nim Game
- WEB标准的理解
- Task not serializable
- 开源视频监控系统:iSpy
- 我的c++第1次作业
- 日期格式化工具类
- add-apt-repository:command not found
- centos安装tftp服务器