bzoj 2430: [Poi2003]Chocolate 贪心
发现每一次切割都会使另一方向所有切割次数++.
而每一刀的代价就是 cost*切割次数,故贪心按照cost从大到小排序即可.
#include <bits/stdc++.h>
#define N 200000
#define LL long long
using namespace std;
void setIO(string s)
{
string in=s+".in";
freopen(in.c_str(),"r",stdin);
}
struct node
{
LL val;
int f;
}t[N];
bool cmp(node a,node b) { return a.val>b.val; }
int f[N];
int main()
{
// setIO("input");
int n,m,i,j;
scanf("%d%d",&n,&m);
--n,--m;
for(i=1;i<=n;++i) scanf("%lld",&t[i].val),t[i].f=0;
for(i=1;i<=m;++i) scanf("%lld",&t[n+i].val),t[n+i].f=1;
sort(t+1,t+1+n+m,cmp);
f[0]=f[1]=1;
LL ans=0ll;
for(i=1;i<=n+m;++i)
{
ans+=t[i].val*f[t[i].f];
++f[t[i].f^1];
}
printf("%lld\n",ans);
return 0;
}
bzoj 2430: [Poi2003]Chocolate 贪心的更多相关文章
- BZOJ 2430 [Poi2003]Chocolate(贪心+归并排序)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2430 [题目大意] 有一块n*m的矩形巧克力,准备将它切成n*m块. 巧克力上共有n- ...
- 【bzoj2430】[Poi2003]Chocolate 贪心
题目描述 有一块n*m的矩形巧克力,准备将它切成n*m块.巧克力上共有n-1条横线和m-1条竖线,你每次可以沿着其中的一条横线或竖线将巧克力切开,无论切割的长短,沿着每条横线切一次的代价依次为y1,y ...
- bzoj 2016: [Usaco2010]Chocolate Eating【二分+贪心】
二分答案,贪心判断,洛谷上要开long long #include<iostream> #include<cstdio> using namespace std; const ...
- BZOJ 1029 建筑抢修 贪心+堆
又搞了一晚上OI,编了两道BZOJ和几道NOI题库,临走之前写两篇感想 noip越来越近了,韩大和clove爷已经开始停课虐我们了... 1029: [JSOI2007]建筑抢修 Time Limit ...
- [bzoj 2151]种树(贪心)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2151 分析:原型是bzoj 1150(CTSC 2007) 首先DP无法下手,想到贪心.想到贪 ...
- BZOJ.5397.circular(随机化 贪心)
BZOJ 感觉自己完全没做过环上选线段的问题(除了一个2-SAT),所以来具体写一写qwq. 基本完全抄自remoon的题解qwq... (下标从\(0\sim m-1\)) 拆环为链,对于原线段\( ...
- 449A - Jzzhu and Chocolate 贪心
一道贪心题,尽量横着切或竖着切,实在不行在交叉切 #include<iostream> #include<stdio.h> using namespace std; int m ...
- BZOJ 2016: [Usaco2010]Chocolate Eating
题目 2016: [Usaco2010]Chocolate Eating Time Limit: 10 Sec Memory Limit: 162 MB Description 贝西从大牛那里收到了 ...
- BZOJ 2016: [Usaco2010]Chocolate Eating( 二分答案 )
因为没注意到long long 就 TLE 了... 二分一下答案就Ok了.. ------------------------------------------------------------ ...
随机推荐
- PAT(B) 1079 延迟的回文数(Java)
题目链接:1079 延迟的回文数 (20 point(s)) 题目描述 给定一个 k+1 位的正整数 N,写成 ak⋯a1a0 的形式,其中对所有 i 有 0≤ai<10 ...
- ubuntu下tftp的安装、配置、使用
1. 安装 sudo apt-get install tftp-hpa tftpd-hpa -y 2. 配置 sudo vi /etc/default/tftpd-hpa #/etc/default/ ...
- 从C++到Qt(舍弃IDE或qmake、cmake等工具的束缚,尝试通过几个例子)
Qt 是 C++ 的库,Qt 在 ansi C++ 的基础上进行了一点扩展. 但国内似乎比较浮躁,学Qt的很多连基本的C++如何编译似乎都不太清楚.本文舍弃IDE或qmake.cmake等工具的束缚, ...
- C#委托,匿名方法,Lambda,泛型委托,表达式树代码示例
第一分钟:委托 有些教材,博客说到委托都会提到事件,虽然事件是委托的一个实例,但是为了理解起来更简单,今天只谈委托不谈事件.先上一段代码: 下边的代码,完成了一个委托应用的演示.一个委托分三个步骤: ...
- OAuth 2.0 简介
是什么: 授权框架/授权标准/授权协议(授权指的是授予你能做什么的权力) 干什么: 授权 使第三方应用程序或客户端获得对HTTP服务上用户帐户信息的有限访问权限(例如 Google,GitHub ) ...
- ClickOnce 部署 API 以编程方式检查应用程序更新
private void InstallUpdateSyncWithInfo() { UpdateCheckInfo info = null; if (ApplicationDeployment.Is ...
- 一、ribbon如何集成在openfeign中使用
所有文章 https://www.cnblogs.com/lay2017/p/11908715.html 正文 ribbon是springcloud封装的一个基于http客户端负载均衡的组件.spri ...
- laravel 中将一对多关联查询的结果去重处理
先交代下数据表结构 主表(订单表)order数据 ord_id order_sn 1 EX2019100123458 其中主键为order_id(订单id) 子表(门票表)order_item数据 o ...
- Fortify漏洞之Open Redirect(开放式重定向)
继续对Fortify的漏洞进行总结,本篇主要针对 Open Redirect(开放式重定向) 的漏洞进行总结,如下: 1.1.产生原因: 通过重定向,Web 应用程序能够引导用户访问同一应用程序内 ...
- SAP Leonardo图片处理相关的机器学习服务在SAP智能服务场景中的应用
本文作为Jerry最近正在做的一个项目的工作思路的梳理. 我们假设这样一个服务场景,技师上门维修某设备,发现设备上某零件损坏了,假设这位技师由于种种原因,没能根据自己的经验识别出这个零件的型号.此时技 ...