洛谷 P4109 [HEOI2015]定价
这是今天的考试题,我来发一波~
看L和R的范围,显然不能一个一个加,这样会有很多重复情况,会超时,只要看该数有多少个后导0,就把L加上10的多少次方。
很容易可以想到价格后面尽可能多0,
在此基础上需要尽量最后一个数字是5。 那么我们可以想到每次更新的时候尽量跳\(10^N\)。
用一重while循环,从L开始往R找,因为题目要输出最小的一个值,还有当ANS为1时,代码会跑的飞快,嘿嘿~
我的代码短,希望能通过审核~
#include <bits/stdc++.h>
using namespace std;
long long l,r,T;
long long mn=999999999999,ans;
int main()
{
freopen("price.in","r",stdin);
freopen("price.out","w",stdout);
cin>>T;
while (T--) {
scanf("%lld%lld",&l,&r);
while (l<=r) {
long long x=l,cnt=0;
while (x%10==0) x/=10,++cnt;
long long y=x,len=0,f=x%10;
while (y) y/=10,++len;
long long p=0;
if (f==5) --p;
p+=2*len;
if (mn>p) mn=p,ans=l;
l+=pow(10,cnt);
}
printf("%lld\n",ans);
mn=999999999999;
}
return 0;
}
洛谷 P4109 [HEOI2015]定价的更多相关文章
- 洛谷——P4109 [HEOI2015]定价
P4109 [HEOI2015]定价 模拟(有点儿贪心) 题目要求在区间$l,r$中$x$后导0尽量多,且除去后导0之外,最后一个数尽量是$5$才最优 从$l$到$r$依次考虑, 假设当前考虑到$50 ...
- Price(洛谷P4109 [HEOI2015]定价)
题目 思路: 按照我的思路这一题应该是这样子的 剔除+判断 剔除 因为后面的0要越多越好,所以我们判断0出现的情况,当2个数之间的差大与10时,证明2个之间会存在一个0,所以这一位我们可以把它去掉,相 ...
- 洛谷 P4112 [HEOI2015]最短不公共子串 解题报告
P4112 [HEOI2015]最短不公共子串 题目描述 在虐各种最长公共子串.子序列的题虐的不耐烦了之后,你决定反其道而行之. 一个串的"子串"指的是它的连续的一段,例如bcd是 ...
- P4109 [HEOI2015]定价
题目描述 在市场上有很多商品的定价类似于 999 元.4999 元.8999 元这样.它们和 1000 元.5000 元和 9000 元并没有什么本质区别,但是在心理学上会让人感觉便宜很多,因此也是商 ...
- 洛谷P4107 [HEOI2015]兔子与樱花 [贪心,DFS]
题目传送门 兔子与樱花 题目描述 很久很久之前,森林里住着一群兔子.有一天,兔子们突然决定要去看樱花.兔子们所在森林里的樱花树很特殊.樱花树由n个树枝分叉点组成,编号从0到n-1,这n个分叉点由n-1 ...
- [洛谷P4111][HEOI2015]小Z的房间
题目大意:有一个$n\times m$的房间,一些位置是房间,另一些位置是柱子,相邻两个房间之间有墙,问有多少种方案可以打通一些墙把所有房间连成一棵树,柱子不可以打通 题解:矩阵树定理,把房间当点,墙 ...
- Luogu P4109 [HEOI2015]定价 贪心
思路:找规律?$or$贪心. 提交:1次 题解: 发现:若可以构成$X0000$,答案绝对不会再在数字最后把$0$改成其他数: 若可以构成$XX50...0$更优. 所以左端点增加的步长是增加的($i ...
- [洛谷P4107] HEOI2015 兔子与樱花
问题描述 很久很久之前,森林里住着一群兔子.有一天,兔子们突然决定要去看樱花.兔子们所在森林里的樱花树很特殊.樱花树由n个树枝分叉点组成,编号从0到n-1,这n个分叉点由n-1个树枝连接,我们可以把它 ...
- 【BZOJ4029】[HEOI2015]定价(贪心)
[BZOJ4029][HEOI2015]定价(贪心) 题面 BZOJ 洛谷 题解 每次加上十进制下的\(lowbit\)就行了??? #include<iostream> #include ...
随机推荐
- python使用单例模式创建MySQL链接
代码: from functools import wraps import mysql.connector from sshtunnel import SSHTunnelForwarder def ...
- 记一次SmtpClient发送邮件引发的系列问题
前提:公司同事离职,我接手同事负责的项目. 事件:某天公司的分析人员,说软件中的邮件发送功能不能使用,总是提示"邮件发送失败". 本地能够正常发送,发布WCF到服务器IIS上,再调 ...
- Hive学习 系列博客
原 Hive作业优化 原 Hive学习六:HIVE日志分析(用户画像) 原 Hive学习五--日志案例分析 原 Hive学习三 原 Hive学习二 原 Hive学习一 博客来源,https://blo ...
- Centos RSA 登录
创建密钥 ssh-keygen -t rsa 1.用户目录下新建.ssh/authorized_keys mkdir .ssh #创建隐藏目录 #修改文件访问权限 chmod 700 .ssh cd ...
- Atitit.js的键盘按键事件捆绑and事件调度
Atitit.js的键盘按键事件捆绑and事件调度 1. Best的方法还是 objEvtMap[ id+evt ]=function(evt,element) 2. Event bind funct ...
- Atitit.导出excel报表的设计与实现java .net php 总结
Atitit.导出excel报表的设计与实现java .net php 总结 1. 导出报表 表格的设计要素1 1.1. 支持通用list<Map>转换1 1.2. 对于空列是否输出1 1 ...
- Mat::operator =
Provides matrix assignment operators. C++: Mat& Mat::operator=(const Mat& m) C++: Mat& M ...
- 如何获取UA
function whatBrowser() { document.Browser.Name.value=navigator.appName; document.Browser.Version.val ...
- CentOS卸载系统自带的OpenJDK
查看目前系统的jdk: rpm -qa | grep jdk 得到的结果: $ rpm -qa | grep jdk java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el ...
- Android中使用HttpClient发送Get请求
这里要指定编码,不然服务器接收到的会是乱码的.