Codevs 数字三角形 问题合集
1220 数字三角形
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold
如图所示的数字三角形,从顶部出发,在每一结点可以选择向左走或得向右走,一直走到底层,要求找出一条路径,使路径上的值最大。
第一行是数塔层数N(1<=N<=100)。
第二行起,按数塔图形,有一个或多个的整数,表示该层节点的值,共有N行。
输出最大值。
5
13
11 8
12 7 26
6 14 15 8
12 7 13 24 11
86
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int w[][],n;
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
scanf("%d",&w[i][j]);
for(int i=n-;i>=;i--)
for(int j=;j<=i;j++)
w[i][j]+=max(w[i+][j],w[i+][j+]);
printf("%d",w[][]);
return ;
}
2189 数字三角形W
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold
数字三角形
要求走到最后mod 100最大
第1行n,表示n行
第2到n+1行为每个的权值
mod 100最大值
2
1
99 98
99
n<=25
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
const int p=;
int w[][],n,f[][][];
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
scanf("%d",&w[i][j]);
f[][][ ((w[][]%p) + p)%p ]=; for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
for(int k=;k<=;k++)
f[i][j][k]=f[i-][j][( ( k-w[i][j]) %p+p ) %p ]||
f[i-][j-][( ( k-w[i][j]) %p+p ) %p ];
int maxx=;
for(int i=;i<=n;i++)
for(int j=;j>=;j--)
if(f[n][i][j]) maxx=max(maxx,j);
printf("%d",maxx);
return ;
}
说实话这道题我不知道是不是动态规划,这DP也不是我写的(可能是数据太水把我放过去了),我觉得这不满足动态规划无后效性的原则,望大神路过留言。。。
2193 数字三角形WW
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 钻石 Diamond
数字三角形必须经过某一个点,使之走的路程和最大
第1行n,表示n行
第2到n+1行为每个的权值
程序必须经过n div 2,n div 2这个点
最大值
2
1
1 1
2
n <=25
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int n,x,y,w[][],ko;
long long f[][];
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
scanf("%d",&w[i][j]);
f[][]=w[][];
w[n/][n/]+=;
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
f[i][j]=w[i][j]+max(f[i-][j],f[i-][j-]);
long long ans=;
for(int i=;i<=n;i++)
ans=max(ans,f[n][i]);
printf("%lld",ans-);
return ;
}
这次是正推。。
2198 数字三角形WWW
时间限制: 1 s 空间限制: 32000 KB 题目等级 : 钻石 Diamond
数字三角形必须经过某一个点,使之走的路程和最大
第1行n,表示n行
第2到n+1行为每个的权值
第n+2行为两个数x,y表示必须经过的点
最大值
2
1
1 1
1 1
2
n<=25
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int n,x,y,w[][],ko;
long long f[][];
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
scanf("%d",&w[i][j]);
scanf("%d%d",&x,&y);
w[x][y]+=;
f[][]=w[][];
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
f[i][j]=w[i][j]+max(f[i-][j],f[i-][j-]);
long long ans=;
for(int i=;i<=n;i++)
ans=max(ans,f[n][i]);
printf("%lld",ans-);
return ;
}
Codevs 数字三角形 问题合集的更多相关文章
- codevs 数字三角形集结
添在前面的一句话:初学DP,若有错误,请指出,不能误人子弟,欢迎大家提出意见.水平不高,博客写的比较粗糙,代码也挺丑,请见谅. 最原始的数字三角形: 1220 数字三角形 时间限制: 1 s 空间 ...
- Codevs 二叉树遍历问题 合集
2010 求后序遍历 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 白银 Silver 题目描述 Description 输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列. ...
- codevs——T1220 数字三角形
http://codevs.cn/problem/1043/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Descr ...
- codevs 1220 数字三角形
1220 数字三角形 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 如图所示的数字三角形,从顶部出发,在每 ...
- codevs——1220 数字三角形(棋盘DP)
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 如图所示的数字三角形,从顶部出发,在每一结点可以选择向左走或 ...
- [CODEVS] 2193 数字三角形WW
数字三角形必须经过某一个点,使之走的路程和最大 从必须经过的点,向上向下分别DP两次的和即为答案. 还有一种思路是把和必须经过点同一行的设为-INF,这样就一定(大概)不会选择它们了. //Write ...
- [CODEVS] 2189 数字三角形W
数字三角形 要求走到最后mod 100最大 可达性DP(好像是这样叫) 用bool数组f[i][j][k]表示 位置(i,j)能否得到k(mod 100意义下) 转移条件 f[i][j][k]=f[i ...
- Codevs 4829 [DP]数字三角形升级版
4829 [DP]数字三角形升级版 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 从数字三角形的顶部(如图,第一行的5表示行数)到底 ...
- 数字三角形W(加强版) codevs 2189
2189 数字三角形W 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold 题目描述 Description 数字三角形 要求走到最后mod 100最大 输入描述 Inpu ...
随机推荐
- c++作业:求N的阶乘。
N的阶乘就是n.(n-1)! 5的阶乘是什么?5*4*3*2*1 #include <iostream> using namespace std; int jiecheng(int num ...
- iOS 资源大全整理
这是个精心编排的列表,它包含了优秀的 iOS 框架.库.教程.XCode 插件.组件等等. 这个列表分为以下几个部分:框架( Frameworks ).组件( Components ).测试( Tes ...
- virtualvenv+django+uWSGI+nginx 部署
原创博文 转载请注明出处! 1. virtualvenv 2. django 3. uWSGI 4. nginx 5. 踩坑记录 1. virtualvenv virtualvenv install ...
- 119. Pascal's Triangle II@python
Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal's triangle. Note t ...
- cesium底图加载底图切换 基于天地图服务
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- java开发微信公众号----开发者基本配置的
首先附上微信公众平台开发技术文档地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1472017492_58YV5 本文主要描 ...
- Spring AOP注解形式简单实现
实现步骤: 1:导入类扫描的注解解析器 命名空间:xmlns:context="http://www.springframework.org/schema/context" xsi ...
- java实现验证码功能
java实现验证码功能 通过java代码实现验证码功能的一般思路: 一.通过java代码生成一张验证码的图片,将验证码的图片保存到项目中的指定文件中去,代码如下: package com.util; ...
- GoF23种设计模式之行为型模式之中介者模式
一.概述 使用一个中介对象来封装一系列的对象交互.中介者让各个对象无需显式地相互引用,从而达到解耦的效果.并且可以独立地改变它们之间的交互.二.适用性1.当一组对象以定义良好但复杂通信的时候.产生的相 ...
- hashable与unhashable
不可哈希(unhashable):就是指其可变,如列表.字典等,都能原地进行修改. 可哈希(hashable):不可变,如字符串.元组那样,不能原地修改. 利用set()和{}建立集合时,要求集合中的 ...