hdu4791水题
题意:
打印东西,给你区间和每个区间的价格,然后输入任务张数,输出最少花费..
题解:
昨晚的小测试就有这个题目,当时蒙B了,怎么也读不懂题目,一直纠结怎么把150拆成100 + 50,有的同学还说是什么dp什么的,吓的我尿了,难题? 后来回去想了下,dp毛线,就是个水题,题目中有一个条件很关键,就是范围越来越大,单价越来越低,所以直接开一个数组,min[a]记录打印a张的最少钱,a是范围的每一个边界点,min[a] = minn(fw[i] * dj[i] ,min[a+1]);
fw 范围 dj 单价;因为越往后范围越大,现在的肯定可以用后面的买,当每一次询问的时候直接用二分找到他在那个范围,如果是最后一个范围直接输出 fw[n] * dj[n],否则输出minn(fw[i] * dj[i] ,min[i+1]) ,哎 ! 水题水不过啊,感觉水题都tm不会做了,这方面必须好好练习.;
#include<stdio.h> #define N 100000 + 10000
__int64 fw[N];
__int64 dj[N];
__int64 min[N]; __int64 minn(__int64 a ,__int64 b)
{
return a < b ? a : b;
} int main ()
{
int n ,m ,i ,j ,t;
scanf("%d" ,&t);
while(t--)
{
scanf("%d %d" , &n ,&m);
for(i = 1 ;i <= n ;i ++)
{
scanf("%I64d %I64d" ,&fw[i] ,&dj[i]);
} min[n] = fw[n] * dj[n];
for(i = n - 1 ;i >= 1 ;i --)
{
min[i] = minn(min[i+1] ,dj[i] * fw[i]);
}
for(i = 1 ;i <= m ;i ++)
{
__int64 q;
scanf("%I64d" ,&q);
__int64 low ,up ,mid;
low = 1 ,up = n;
int mk;
while(low <= up)
{
mid = (low + up) / 2;
if(q >= fw[mid])
{
low = mid + 1;
mk = mid;
}
else
up = mid - 1;
}
//printf("%d\n" ,mk);
__int64 ans;
if(mk != n)
printf("%I64d\n" ,minn(q * dj[mk] ,min[mk + 1]));
else
printf("%I64d\n" ,q * dj[mk]);
}
}
return 0;
}
hdu4791水题的更多相关文章
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- ACM :漫漫上学路 -DP -水题
CSU 1772 漫漫上学路 Time Limit: 1000MS Memory Limit: 131072KB 64bit IO Format: %lld & %llu Submit ...
- ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)
1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 154 Solved: 112[ ...
- [poj2247] Humble Numbers (DP水题)
DP 水题 Description A number whose only prime factors are 2,3,5 or 7 is called a humble number. The se ...
- gdutcode 1195: 相信我这是水题 GDUT中有个风云人物pigofzhou,是冰点奇迹队的主代码手,
1195: 相信我这是水题 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 821 Solved: 219 Description GDUT中有个风云人 ...
- BZOJ 1303 CQOI2009 中位数图 水题
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 2340 Solved: 1464[Submit][Statu ...
- 第十一届“蓝狐网络杯”湖南省大学生计算机程序设计竞赛 B - 大还是小? 字符串水题
B - 大还是小? Time Limit:5000MS Memory Limit:65535KB 64bit IO Format: Description 输入两个实数,判断第一个数大 ...
- ACM水题
ACM小白...非常费劲儿的学习中,我觉得目前我能做出来的都可以划分在水题的范围中...不断做,不断总结,随时更新 POJ: 1004 Financial Management 求平均值 杭电OJ: ...
- CF451C Predict Outcome of the Game 水题
Codeforces Round #258 (Div. 2) Predict Outcome of the Game C. Predict Outcome of the Game time limit ...
随机推荐
- Cloudam云端携手高校探索云计算在生命科学领域的应用
随着云计算服务和实践的成熟,越来越多的行业对于云计算的需求也日益增加.不同行业的需求与云计算融合,就需要更大的算力支撑.这也意味着,云计算的需求市场日渐扩大,Cloudam云端自主研发的云E算力平台应 ...
- 剑指 Offer 13. 机器人的运动范围 + 深搜 + 递归
剑指 Offer 13. 机器人的运动范围 题目链接 package com.walegarrett.offer; /** * @Author WaleGarrett * @Date 2020/12/ ...
- POJ-3660(Floyd算法)
Cow Contest POJ-3660 1.本题考察的是最短路,用的算法是Floyd算法 2.如果一个结点和剩余的n-1个结点都有关系,那么可以确定其排名 3.需要注意的是,判断是否有关系时,反向关 ...
- Nginx常见的错误配置
Blog:博客园 个人 翻译自Common Nginx misconfigurations that leave your web server open to attack Nginx是当前主流的W ...
- Debian中的NVIDIA显卡驱动安装——超简单,一行命令
其实Debian的non-free固件中包含NVIDIA的显卡驱动,所以没必要在官网下run包一步一步来 sudo apt install nvidia-settings 安装时会提示与X冲突,没关系 ...
- FreeBSD 中文TTY控制台
freebsd新型终端VT,支持cjk,所以丢个字体进去,就能显示中文了1,首先你没有改过控制台程序,使用的是默认的,,2,最新版本,本说明是以freebsd12.1release字体格式为.fnt命 ...
- spring事务:事务控制方式,使用AOP控制事务,七种事务传播行为,声明事务,模板对象,模板对象原理分析
知识点梳理 课堂讲义 1)事务回顾 1.1)什么是事务-视频01 事务可以看做是一次大的活动,它由不同的小活动组成,这些活动要么全部成功,要么全部失败. 1.2)事务的作用 事务特征(ACID) 原子 ...
- 代码审查:从 ArrayList 说线程安全
本文从代码审查过程中发现的一个 ArrayList 相关的「线程安全」问题出发,来剖析和理解线程安全. 案例分析 前两天在代码 Review 的过程中,看到有小伙伴用了类似以下的写法: List< ...
- arcgis10.2 全套安装教程
一.安装LicenseManager 1.运行在licensemanager目录下的Setup.exe 2.安装完成后点击stop停止服务,然后点击"OK" 3.选择ArcGIS1 ...
- JavaScript中函数防抖、节流
码文不易,转载请带上本文链接,感谢~ https://www.cnblogs.com/echoyya/p/14565642.html 目录 码文不易,转载请带上本文链接,感谢~ https://www ...