HDU1003 简单DP
Max Sum
#include <bits/stdc++.h>
using namespace std;
const int MAXN = + ;
int T, n;
int arr[MAXN], dp[MAXN];
int S, E;
int main() {
scanf("%d", &T);
for(int t = ; t < T; ++t) {
S = E = ;
cin >> n;
for(int i = ; i != n; ++i)
cin >> arr[i];
dp[] = arr[];
for(int i = ; i != n; ++i)
if(dp[i-] >= )
dp[i] = dp[i-] + arr[i];
else
dp[i] = arr[i];
int Max = dp[];
for(int i = ; i != n; ++i)
if(dp[i] >= Max) {
Max = dp[i];
E = i;
}
int sum = ;
for(int i = E; i >= ; --i) {
sum += arr[i];
if(sum == Max)
S = i;
}
cout << "Case " << t+ << ":" << endl;
cout << Max << " " << S+ << " " << E+ << endl;
if(t < T-) puts("");
}
return ;
}
用了数组
#include <bits/stdc++.h>
using namespace std; int main() {
int T,n;
int Max, S, E, sum, a;
cin >> T;
for(int t = ; t <= T; ++t) {
cin >> n;
S = E = sum = ;
Max = -;
int k = ;
for(int i = ; i != n; ++i) {
cin >> a;
sum += a;
if(sum > Max) {
Max = sum;
S = k;
E = i;
}
if(sum < ) {
sum = ;
k = i + ;
}
}
cout << "Case " << t << ":" << endl;
cout << Max << " " << S+ << " " << E+ << endl;
if(t < T) puts("");
}
return ;
}
不用数组
HDU1003 简单DP的更多相关文章
- HDU 1087 简单dp,求递增子序列使和最大
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
- Codeforces Round #260 (Div. 1) A. Boredom (简单dp)
题目链接:http://codeforces.com/problemset/problem/455/A 给你n个数,要是其中取一个大小为x的数,那x+1和x-1都不能取了,问你最后取完最大的和是多少. ...
- codeforces Gym 100500H A. Potion of Immortality 简单DP
Problem H. ICPC QuestTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100500/a ...
- 简单dp --- HDU1248寒冰王座
题目链接 这道题也是简单dp里面的一种经典类型,递推式就是dp[i] = min(dp[i-150], dp[i-200], dp[i-350]) 代码如下: #include<iostream ...
- poj2385 简单DP
J - 简单dp Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:65536KB 64bit ...
- hdu1087 简单DP
I - 简单dp 例题扩展 Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:32768KB ...
- poj 1157 LITTLE SHOP_简单dp
题意:给你n种花,m个盆,花盆是有顺序的,每种花只能插一个花盘i,下一种花的只能插i<j的花盘,现在给出价值,求最大价值 简单dp #include <iostream> #incl ...
- hdu 2471 简单DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2571 简单dp, dp[n][m] +=( dp[n-1][m],dp[n][m-1],d[i][k ...
- Codeforces 41D Pawn 简单dp
题目链接:点击打开链接 给定n*m 的矩阵 常数k 以下一个n*m的矩阵,每一个位置由 0-9的一个整数表示 问: 从最后一行開始向上走到第一行使得路径上的和 % (k+1) == 0 每一个格子仅仅 ...
随机推荐
- Jquery动态添加的元素绑定事件的3种方法
假设我们点击li标签,弹出他的文本,如果是动态添加的li,点击是没有效果的,压根弹不出来文本. 下面博主分享一下为动态添加的元素绑定事件的三种方法,网上一般都是两种,我在这里多增加了一种. 事件案例: ...
- Math类
Math类:用于执行基本数学运算的方法 方法: public static int abs(int a):绝对值 public static double ceil(double a):向上取整 ...
- JSP登录页面使用Enter键登录【转】
按回车键实现登录 第一种方法: <html xmlns="http://www.w3.org/1999/xhtml" ><head> & ...
- javascript面向对象:继承、多态
继承 js中同样可以实现类的继承这一面向对象特性,继承父类中的所有成员(变量和属性),同时可扩展自己的成员,下面介绍几种js中实现继承的方式: 1,对象模仿:通过动态的改变 this 指针的指向,实现 ...
- 制作wordpress留言板
总结步骤如下: 1.找到模板目录中的single.php文件,复制single.php并重命名为guestbook.php 2.在guestbook最顶部添加如下代码(用于模板调用) <?php ...
- golang笔记——流程控制
条件语句 if ... else if ... else 语句,如: { fmt.Println(">100") } < num { fmt.Println(" ...
- App-Pass the password
V1.0 初始版本 注册一个帐号却不想使用简单密码? Pass the Password! 输入任意字符串,如反写或截取网站域名,我们帮你生成高安全性密码. 记住规则,忘记密码 . 下一次依照你的规则 ...
- tyvj1194 划分大理石
描述 有价值分别为1..6的大理石各a[1..6]块,现要将它们分成两部分,使得两部分价值之和相等,问是否可以实现.其中大理石的总数不超过20000. 输入格式 有多组数据!所以可能有多行如果有0 ...
- 微信公众平台自定义菜单新增扫一扫、发图片、发位置 LBS运作更便捷
今天微信公众平台发布更新,自定义菜单新增扫一扫.发图片.发送位置等功能,这对于有意挖掘微信LBS服务的运营者来说更便捷了,订阅号不用返回微信界面就能扫图.发送图片.调用地理位置,用户体验更友好,自然也 ...
- ICP 算法
ICP 算法是一种点云到点云的配准方法. 在SLAM中通过空间点云的配准(可以通过相机或者3D激光雷达获取点云数据),可以估计相机运动(机器人运动,旋转矩阵R与平移向量t),累积配准,并不断回环检测, ...