1489 ACM 贪心
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1489
题意:为负数表示买酒,正数表示买酒,每两家人之间为one unit of work.问最小的work
思路:从左向右依次把久给离自己最近的买卖家就好。
代码算法原理如下:
以题目举的例子为例:
5
5 -4 1 -3 1
5 -5+1 -1+2 -2-1 1+0
{(5 -5)+(1 -1)+(2 -2)-(1 1)+0}
每个数都可以拆分成如上两个数,相邻的两个数 互相供应。(之所以可以这样拆,是因为题目的要求:one unit of work.)
从左到右,计算的过程为:5+|1|+|2|+|-1|+|0|=9,实际就是5 .-5,1.-1,这样成对的数,依次加一个就好。
扩展:
绝对值:
#include
int abs(int i); // 处理int类型的取绝对值
double fabs(double i); //处理double类型的取绝对值
float fabsf(float i); /处理float类型的取绝对值
code:
#include <iostream>
#include <stdio.h>
#include <stdlib.h> using namespace std; int main()
{
int n, a;
while(cin>>n && n) {
long long sum = , ans = ; for(int i=; i<=n; i++) {
scanf("%d", &a); sum += a;
ans += abs(sum);
} cout<<ans<<endl;
} return ;
}
1489 ACM 贪心的更多相关文章
- 2111 ACM 贪心 水题
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2111 题意:知道背包容量和物品单价.体积.问能买到的最大价值? 注意:单价指的是单位体积的价格 思路:先把 ...
- ACM 贪心算法总结
贪心算法的本质: 就是当前状态的最优解,它并不考虑全局. 什么是当前状态的最优解? 成本问题? https://www.cnblogs.com/xuxiaojin/p/9400892.html (po ...
- hihocoder1384/CH0601 Genius ACM[贪心+倍增+归并排序]
提交地址. 关于lyd给的倍增方法,即从当前枚举向后的$2^k$长度($k$从$1$开始),如果可行就将$k$加一以扩大范围,不可行时将范围不断减半直至$0$. 举个例子,假设当下在1,目标答案是13 ...
- [2012山东ACM省赛] Pick apples (贪心,完全背包,枚举)
Pick apples Time Limit: 1000MS Memory limit: 165536K 题目描述 Once ago, there is a mystery yard which on ...
- 【贪心】【模拟】HDU 5491 The Next (2015 ACM/ICPC Asia Regional Hefei Online)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5491 题目大意: 一个数D(0<=D<231),求比D大的第一个满足:二进制下1个个数在 ...
- [2012山东ACM省赛] Pick apples (贪心,全然背包,枚举)
Pick apples Time Limit: 1000MS Memory limit: 165536K 题目描写叙述 Once ago, there is a mystery yard which ...
- 牛客网 桂林电子科技大学第三届ACM程序设计竞赛 C.二元-K个二元组最小值和最大-优先队列+贪心(思维)
链接:https://ac.nowcoder.com/acm/contest/558/C来源:牛客网 小猫在研究二元组. 小猫在研究最大值. 给定N个二元组(a1,b1),(a2,b2),…,(aN, ...
- ACM学习历程—CSU 1216 异或最大值(xor && 贪心 && 字典树)
题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1216 题目大意是给了n个数,然后取出两个数,使得xor值最大. 首先暴力枚举是C(n, ...
- 贪心 Codeforces Round #289 (Div. 2, ACM ICPC Rules) B. Painting Pebbles
题目传送门 /* 题意:有 n 个piles,第 i 个 piles有 ai 个pebbles,用 k 种颜色去填充所有存在的pebbles, 使得任意两个piles,用颜色c填充的pebbles数量 ...
随机推荐
- npm run build 打包后(直接打包白屏),如何运行在本地查看效果(Apache服务)
转载: https://www.cnblogs.com/qiu-Ann/p/7477593.html 目前,使用vue-cli脚手架写了一个前端项目,之前一直是使用npm run dev 在8080端 ...
- Axure实现多用户注册验证
*****多用户登录验证***** 一.(常规想法)方法:工作量较大,做起来繁琐 1.当用户名和密码相同时怎么区分两者,使用冒号和括号来区分: eg. (admin:123456)(123456:de ...
- sqlserver text类型字段错误 net.sourceforge.jtds.jdbc.ClobImpl@66fa192的解决方法
1. SqlServer数据库中text/ntext字段,在用jtds1.2驱动时,会出现用getString()取不到值的问题,toString()也不行. 昨天查了下帮助可以通过简单的配置解决.即 ...
- reactnative的js里的super的作用
class Blink extends Component{ constructor(props){ super(props); this.state = { showText: true }; se ...
- base | AtomicIntegerT类
1. 原子自增操作 type __sync_fetch_and_add (type *ptr, type value) 2. 原子比较和交换(设置)操作 type __sync_val_compare ...
- 最短路径算法之Dijkstra算法
参考:<大话数据结构> 这是一个按照路径长度递增的次序产生最短路径的算法.它并不是一次求出源点到目标点的最短路径,而是一步步求出它们之间顶点的最短路径,过程中都是基于已经求出的最短路径的基 ...
- CentOS6.9安装HDFS
1.安装依赖包 yum install -y gcc openssh-clients 2.升级glib2.14 升级glibc-2.14用到的rpm 下载地址:https://pan.baidu.co ...
- pp 总结二
1. return false ES6函数的扩展:箭头函数 数组 arr.map() arr.filter() <!DOCTYPE html> <html lang=&qu ...
- Multidex(二)之Dex预加载优化
Multidex(二)之Dex预加载优化 https://www.jianshu.com/p/2891599511ff
- [转]fiddler 抓包 HTTPS 请求
教程开始 安装 fiddler 首先准备一台可以上网的 windos 电脑,准备一部智能手机. fiddler 抓包工具:下载地址( 自行百度一搜一大片).安装,打开如果遇到. net framewo ...