codeforces 985C Liebig's Barrels(贪心)
题意:
有n * k块木板,每个木桶由k木板组成,每个木桶的容量定义为它最短的那块木板的长度。
任意两个木桶的容量v1,v2,满足|v1-v2| <= d。
问n个木桶容量的最大的和为多少,或者说明不可能做出这样的n个木桶。
思路:
一道纯粹的贪心题,可以确定最小的数MIN,那莫其他区间的最小的数就不能大过MIN+l , 可以想出假设我们从小到大排序,我们的目的是尽可能的把不满足条件的与满足条件的最大反正一个区间里面。我们可以用sum标记,如果扫描的时候遇到不满足的,sum++,这表示不满足的需要匹配掉的,具体可看代码分析
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
#define ll long long
ll a[];
bool cmp(ll a,ll b)
{
return b<a;
}
int main( )
{
int n,k,l;
scanf("%d%d%d",&n,&k,&l);
for(ll i= ; i<n*k ; i++)
cin>>a[i];
sort(a,a+n*k,cmp);
ll minx=a[n*k-];///找到最小的 ll sum=,ans=,nu=;///sum是后面需要多少区间包括,ans是确定了多少区间
for(ll i= ; i<n*k ; i++)
{
if(a[i]-minx<=l&&sum>=k-)
{
ans++;
nu+=a[i];
sum-=k-;
}
else
sum++;
}
if(ans==n)
cout<<nu;
else
puts("");
return ;
}
codeforces 985C Liebig's Barrels(贪心)的更多相关文章
- codeforces 985C Liebig's Barrels
题意: 有n * k块木板,每个木桶由k木板组成,每个木桶的容量定义为它最短的那块木板的长度. 任意两个木桶的容量v1,v2,满足|v1-v2| <= d. 问n个木桶容量的最大的和为多少,或者 ...
- codeforce 985C Liebig's Barrels(贪心+思维)
Liebig's Barrels time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...
- CF985C Liebig's Barrels 贪心 第二十
Liebig's Barrels time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...
- Codeforce Div-2 985 C. Liebig's Barrels
http://codeforces.com/contest/985/problem/C C. Liebig's Barrels time limit per test 2 seconds memory ...
- codeforces Gym 100338E Numbers (贪心,实现)
题目:http://codeforces.com/gym/100338/attachments 贪心,每次枚举10的i次幂,除k后取余数r在用k-r补在10的幂上作为候选答案. #include< ...
- [Codeforces 1214A]Optimal Currency Exchange(贪心)
[Codeforces 1214A]Optimal Currency Exchange(贪心) 题面 题面较长,略 分析 这个A题稍微有点思维难度,比赛的时候被孙了一下 贪心的思路是,我们换面值越小的 ...
- Liebig's Barrels CodeForces - 985C (贪心)
链接 大意:给定$nk$块木板, 要制作$n$个$k$块板的桶, 要求任意两桶容积差不超过$l$, 每个桶的容积为最短木板长, 输出$n$个桶的最大容积和 假设最短板长$m$, 显然最后桶的体积都在$ ...
- codeforces 349B Color the Fence 贪心,思维
1.codeforces 349B Color the Fence 2.链接:http://codeforces.com/problemset/problem/349/B 3.总结: 刷栅栏.1 ...
- Codeforces Gym 100269E Energy Tycoon 贪心
题目链接:http://codeforces.com/gym/100269/attachments 题意: 有长度为n个格子,你有两种操作,1是放一个长度为1的东西上去,2是放一个长度为2的东西上去 ...
随机推荐
- springJunit测试
; m.setModelType(s); m.setModelUrlType(s); modelService.create(m); } } 来源: http://enki-ding-yeah-n ...
- apache server和tomcat集群配置一:水平负载
下载apache server,最新链接http://archive.apache.org/dist/httpd/binaries/win32 当前实验版本2.2.4 下载apache tomca ...
- pow求一个数的n次幂
#!/usr/bin/env python i = pow(2,5) #求一个数的n次幂 print(i) C:\Python35\python3.exe F:/Python/2day/c6.py 3 ...
- 线段树教做人系列(1)HDU4967 Handling the Past
题意:给你n组操作,分别为压栈,出栈,询问栈顶元素.每一组操作有一个时间戳,每次询问栈顶的元素的操作询问的是在他之前出现的操作,而且时间戳小于它的情况.题目中不会出现栈为空而且出栈的情况. 例如: p ...
- IFC4 在线参考手册
国内地址1:http://www.vfkjsd.cn/ifc/ifc4/index.htm 国内地址2:http://www.bim-times.com/ifc/ifc4/index.htm 官方地址 ...
- 校园客户端(DR)启动后提示我们缺失packet.dll,无法正常启动(7)
有的时候校园客户端(DR)启动后提示我们缺失packet.dll,无法正常启动,然而我们重装了客户端后任然不感冒,那么问题来了,问题解决不了往往源于我们对问题的本质不够了解,如果了解问题的本质,那么问 ...
- 多线程学习-基础( 十)一个synchronized(){/*代码块*/}简单案例分析
一.提出疑惑 上一篇文章中,分析了synchronized关键字的用法.但是好像遗漏了一种情况. 那就是: synchronized(obj){/*同步块代码*/} 一般有以下几种情况: (1)syn ...
- iOS应用推荐
RSS阅读器 Inoreader ***客户端 SuperWingy OpenWingy(已下架) 书签 Pocket 语音备忘录 Voice-Memos 编程语言学习 SoloLearn 社交 Tw ...
- 国内物联网平台(1):百度物接入IoT Hub
国内物联网平台(1) ——百度物接入IoT Hub 马智 物接入IoT Hub - 架构 全托管的云服务,帮助建立设备与云端之间安全可靠的双向连接 支撑海量设备的数据收集.监控.故障预测等各种物联网场 ...
- adobe flash player 过期问题
在百度搜索 " adobe flash player debugger",如图打开官网 https://www.adobe.com/support/flashplayer/debu ...