FishingMaster(HDU-6709)【贪心】
题目链接:https://vjudge.net/problem/HDU-6709
题意:一个人要抓n条鱼,每抓一条鱼用时K,每烹饪一条鱼用时a[i],抓鱼的过程不能被打断,烹饪鱼的时候可以抓鱼,也可以多烹饪一会儿,求烹饪完n条鱼所需最短时间。
思路:(学习了这位大佬的思路)https://blog.csdn.net/qq_40655981/article/details/100104985
设num=∑(a[i]/k),
该问题可以分两种情况讨论:
1.num>=(n-1),此时每烹饪一条i鱼,同时抓(a[i]/k)条鱼即可保证除去K外的每一份时间都在烹饪鱼。
2.num<(n-1),此时,需要使浪费的时间最少,则需以(k-a[i]%k)从小到大的顺序抓捕和烹饪鱼。
代码如下:
#include<cstdio>
#include<algorithm>
using namespace std;
int t,n,k;
int a[]; bool cmp(int x1,int x2){
return (k-x1%k)<(k-x2%k);
}
int main(){
int num;
long long ans;
scanf("%d",&t);
while(t--){
num=;
scanf("%d%d",&n,&k);
ans=k;
for(int i=;i<=n;i++){
scanf("%d",&a[i]);
num+=a[i]/k;
ans+=a[i];
}
if(num<n-){
sort(a+,a++n,cmp);
num=n-num-;
for(int i=;i<=num;i++){
ans+=(k-a[i]%k);
}
}
printf("%lld\n",ans);
}
}
FishingMaster(HDU-6709)【贪心】的更多相关文章
- 【Fishing Master HDU - 6709 】【贪心】
题意分析 题意:题目给出n条鱼,以及捕一条鱼所用的时间k,并给出煮每一条鱼的时间,问抓完并煮完所有鱼的最短时间. 附题目链接 思路: 1.捕第一条鱼的时间是不可避免的,煮每条鱼的时间也是不可避免的,这 ...
- HDU 6709“Fishing Master”(贪心+优先级队列)
传送门 •参考资料 [1]:2019CCPC网络选拔赛 H.Fishing Master(思维+贪心) •题意 池塘里有 n 条鱼,捕捉一条鱼需要花费固定的 k 时间: 你有一个锅,每次只能煮一条鱼, ...
- Hdu 5289-Assignment 贪心,ST表
题目: http://acm.hdu.edu.cn/showproblem.php?pid=5289 Assignment Time Limit: 4000/2000 MS (Java/Others) ...
- hdu 4803 贪心/思维题
http://acm.hdu.edu.cn/showproblem.php?pid=4803 话说C++还卡精度么? G++ AC C++ WA 我自己的贪心策略错了 -- 就是尽量下键,然后上 ...
- hdu 1735(贪心) 统计字数
戳我穿越:http://acm.hdu.edu.cn/showproblem.php?pid=1735 对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实 这是道贪心的题目,要有贪心的意 ...
- hdu 4974 贪心
http://acm.hdu.edu.cn/showproblem.php?pid=4974 n个人进行选秀,有一个人做裁判,每次有两人进行对决,裁判可以选择为两人打分,可以同时加上1分,或者单独为一 ...
- hdu 4982 贪心构造序列
http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...
- HDU 2307 贪心之活动安排问题
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2037 今年暑假不AC Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 1052 贪心+dp
http://acm.hdu.edu.cn/showproblem.php?pid=1052 Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS ...
- HDU 2111 Saving HDU【贪心】
解题思路:排序后贪心,和fatmouse's trade 类似 Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: ...
随机推荐
- IO流——常用IO流详解
1:字节流 字节流:用于处理以字节为单位的二进制文件(如音乐,图片等) InputStream 是抽象类 它的对应子类FileInputStream可以被实例化 构造方法: FileInputStre ...
- JavaScript中获取html元素常用手法和区分
对于许多前端开发项目来说,获取元素进行操作是必不可少的,例如tab标签,全屏切换,自动滚播等效果都需要通过获取节点元素来实现.下面我来总结下JavaScript最常用的4个Document对象中获取元 ...
- oracle sql insert插入字符&
最近遇到insert 语句插入&字符报弹出框,如下: sql: insert into test_ldl001 (ID, NAME) values (', '/test/test.do?act ...
- Vue学习手记02 - 路由
1.项目 注意:项目在初始化的时候没有安装vue-router就需要进行安装 2.安装路由: 在项目中使用ctrl+`, 打开终端, 执行如下命令 npm i vue-router -S 或者 cn ...
- 解决跨操作系统平台JSON中文乱码问题
解决跨操作系统平台JSON中文乱码问题 LINUX统一使用utf-8编码,WINDOWS却不是. LINUX中间件,传输JSON给WINDOWS程序,会乱码. 解决办法: 对JSON字段是字符串类型的 ...
- OpenJudge计算概论-买房子
/*================================================================= 买房子 总时间限制: 1000ms 内存限制: 65536kB ...
- 阶段5 3.微服务项目【学成在线】_day16 Spring Security Oauth2_16-认证接口开发-Api接口定义
4.3 认证服务 4.3.1 需求分析 认证服务需要实现的功能如下: 1.登录接口 前端post提交账号.密码等,用户身份校验通过,生成令牌,并将令牌存储到redis. 将令牌写入cookie. 2. ...
- keepalived两台机器同时出现vip问题
配置文件: 主:192.168.1.14 ! Configuration File for keepalived global_defs { script_user root enable_scrip ...
- MySQL函数使用
1.mysql开启函数功能 MySQL函数不能创建的解决方法 在使用MySQL数据库时,有时会遇到mysql函数不能创建的情况. 出错信息大致类似: ERROR 1418 (HY000): This ...
- for miaomiao
package com.mytest.formiaomiao; import java.util.ArrayList; import java.util.List; import java.util. ...