D. Make It Round
在Berlandia发生了通货膨胀,所以商店需要改变商品的价格。
商品n的当前价格已经给出。允许将该商品的价格提高k倍,1≤k≤m,k为整数。输出商品的最圆的可能的新价格。也就是在最后有最大数量的零的那个。
例如,数字481000比数字1000010更圆(481000的末尾有三个零,而1000010的末尾只有一个零)。
如果有几个可能的变体,输出新价格最大的那个。
如果不可能得到一个更圆的价格,则输出n⋅m(即可能的最大价格)。
输入
第一行包含一个整数t(1≤t≤104)--测试中测试用例的数量。
每个测试用例由一行组成。
这一行包含两个整数:n和m(1≤n,m≤109)。其中n是商品的旧价格,数字m意味着你可以增加价格n不超过m倍。
输出
对于每个测试案例,在单独的一行中输出形式为n⋅k(1≤k≤m,k-一个整数)的最圆整数。
如果有几个可能的变体,则输出新价格(值n⋅k)最大的那一个。
如果不可能得到一个更圆的价格,则输出n⋅m(即可能的最大价格)。
例子
输入
10
6 11
5 43
13 5
4 16
10050 12345
2 6
4 30
25 10
2 81
1 7
输出
60
200
65
60
120600000
10
100
200
100
7
备注
在第一种情况下n=6,m=11。我们不能得到一个末尾有两个零或更多的数字,因为我们需要将价格提高50倍,但50>m=11。10的最大价格倍数将是6⋅10=60。在第二种情况下,n=5,m=43。100的最大价格倍数将是5⋅40=200。
在第三种情况下,n=13,m=5。所有可能的新价格都不会以0结尾,那么你应该输出n⋅m=65。
在第四种情况下,你应该将价格提高15倍。
在第五种情况下,将价格提高12000倍。
首先 , 产生末尾 0 必定为质因子 2,5 所形成 。
所以 ,对 n 先进行因式分解 , 求出其 2 的因子个数 和 5 的因子个数 。
然后考虑 k , 首先可能的运用 n 中的 和2和5 。
剩余 k 的空间则考虑末尾尽可能多的 0
判断 n中几个2 几个5 2*5=10 内部自己消化 多出来2 或 5 让 m来解决 之后在对m%10
#include<iostream>
using namespace std;
typedef long long ll;
int main()
{int t;cin>>t;while(t--){ll n,m;cin>>n>>m;ll y=1;while(n&&n%10==0){n/=10;y*=10;}while(n%2==0&&m>=5){n/=2;m/=5;y*=10;}while(n%5==0&&m>=2){n/=5;m/=2;y*=10;}while(m>=10){m/=10;y*=10;}y*=n*m;cout<<y<<endl;}return 0;
}
相关文章:
D. Make It Round
在Berlandia发生了通货膨胀,所以商店需要改变商品的价格。 商品n的当前价格已经给出。允许将该商品的价格提高k倍,1≤k≤m,k为整数。输出商品的最圆的可能的新价格。也就是在最后有最大数量的零的那个。 例如,数字481000比数字1…...
Python网站页面开发HTML总结
Python网站页面开发HTML总结 一、HTML基础语法 1.HTML是什么? ●HTML是HyperText Mark-up Language的首字母简写,即超文本标记语言。 ●HTML不是一种编程语言,而是一种标记语言。 ●超文本指的是超链接,标记指的是标签…...
[个人笔记] vCenter设置时区和NTP同步
VMware虚拟化 - 运维篇 第三章 vCenter设置时区和NTP同步 VMware虚拟化 - 运维篇系列文章回顾vCenter设置时区和NTP同步(附加)ESXi设置alias参考链接 系列文章回顾 第一章 vCenter给虚机添加RDM磁盘 第二章 vCenter回收活跃虚拟机的剩余可用空间 vCente…...
(原创)Flutter与Native通信的方式:EventChannel和BasicMessageChannel
前言 上一篇博客主要介绍了MethodChannel的使用方式 Flutter与Native通信的方式:MethodChannel 这篇博客接着讲另外两种通信方式 EventChannel和BasicMessageChannel EventChannel用于从native向flutter发送通知事件,例如flutter通过其监听Android的重…...
【解决】el-tree报Cannot read property ‘getCheckedKeys‘ of undefined
如果你报错 Cannot read property getCheckedKeys of undefined 或者 Cannot read property getCheckedNodes of undefined 只要在你的在<el-tree>上加个这个,就可以了 ref"tree"...
车载软件架构 —— 信息安全与基础软件
车载软件架构 —— 信息安全与基础软件 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 没有人关注你。也无需有人关注你。你必须承认自己的价值,你不能站在他人的角度来反对自己。人生在世,最怕…...
C\C++内存管理
目录 1.C/C内存分布2.C语言中动态内存管理方式3.C中动态内存管理3.1new/delete内置类型3.2new和delete操作自定义类型 4.operator new与operator delete函数4.2重载operator new与operator delete(了解) 5.new和delete的实现原理5.1内置类型5.2 自定义类…...
会议室预约系统-检验是否被预约核心SQL
会议室预约时,判断能否被预约,即查询是否已经有预约记录,存在不能被预约。 s,e;表示已经预约的开始结束时间; ns,ne,表示表单提交的预约时间; 只需要(ns,ne)与(s,e)区间没有交集,可…...
C++11类模板
类模板是用来生成类的蓝图,与函数模板的不同之处是,编译器不能为类模板推断模板参数类型。 所以我们在使用类的时候要带上<>并且指定类型如下 vector<int> v; // 需要带上<int> 哦定义类模板 如下,和函数模板差不多都是…...
SpiderFlow爬虫平台(爬虫学习)
申明 作为自己学习的记录,方面后期查阅 官网 SpiderFlow官网 简介 spider-flow 是一个爬虫平台,以图形化方式定义爬虫流程,无需代码即可实现一个爬虫 是使用springboot开发的项目,后端代码直接运行即可使用...
Rime输入法配置
Rime输入法在我电脑上,删了装,装了删,已经反复好几次了。就像是Vim,用它的时候,感觉各种配置太麻烦,想要的功能不知道怎么实现。转用其它编辑器的时候,却又念着它的快捷键和可定制性,…...
R语言学习笔记--列表list、数据框
列表 1-列表 列表可以包含不同类型的对象,也就是说,列表不是将某些具体的值组织起来,而是组织R对象。列表将数据组织在一个一维集合中。 列表非常好用,因为它可以装任何类型的对象,不要求数据之间是同质的。 创建列…...
电磁波定义、特性以及信道相关知识
文章目录 前言一、电磁波的定义、特性、波谱1、电磁波的特性2、电磁波谱的划分及用途 二、地球大气层的结构三、电磁波的传播方式1、地波(ground-wave)2、天波(sky-wave)3、视线传播(line-of-sight)①、相关…...
TCP KeepAlive与HTTP Keep-Alive
TCP KeepAlive与HTTP Keep-Alive TCP KeepAliveHTTP Keep-AliveTCP服务器怎么检测客户端断开连接 TCP KeepAlive TCP连接建立之后,如果应用程序或者上层协议一直不发送数据,或者隔很长时间才发送一次数据,那么TCP需要判断是应用程序掉线了还…...
SkyWalking链路追踪-Agent (代理人)
基础概念: SkyWalking链路追踪代理(SkyWalking Tracing Agent)是一种用于收集和传输链路追踪数据的工具。它与应用程序一起部署,并通过自动或手动方式来收集关于应用程序中的请求路径和操作的信息。该代理将收集到的数据发送到Sky…...
多线程案例 | 单例模式、阻塞队列、定时器、线程池
多线程案例 1、案例一:线程安全的单例模式 单例模式 单例模式是设计模式的一种 什么是设计模式? 设计模式好比象棋中的 “棋谱”,红方当头炮,黑方马来跳,针对红方的一些走法,黑方应招的时候有一些固定的…...
C++文件操作
1.写文件 //文件操作 #include<fstream> int main() {//写文件//路径 -- 此路径没有就生成给文件 string filePath R"(E:\项目\test.txt)";//打开文件 ios::app在后面追加内容 啥也不跟是覆盖写入ofstream fout(filePath, ios::app);//检查是否打开成功if (…...
overleaf(latex) 公式过大,需要调小字体,同时公式编号字体不变的方法
提问:用latex编辑的双列排版的论文中,如果一个包含矩阵的公式中,矩阵过大,导致超出列的范围,一般该如何调整呢? 回答:如果你在LaTeX中的双列排版中遇到了一个矩阵过大而导致超出列范围的问题&a…...
flink采用thrift读取tablets一个天坑
原先的配置 [INFO] StarRocksSourceBeReader [open Scan params.mem_limit 8589934592 B] [INFO] StarRocksSourceBeReader [open Scan params.query-timeout-s 600 s] [INFO] StarRocksSourceBeReader [open Scan params.keep-alive-min 100 min] [INFO] StarRocksSourceBeRea…...
Android 面试题 异常捕获 四
🔥 为什么要捕获奔溃 🔥 因为在开发或者测试阶段不能做到100%的问题解决,因为 app 上线之后会有你想不到的各种各样的使用的场景,而发生问题时用户只能描述一下怎么怎么怎么就出现了问题。也许反馈到开发这边可以100%复现那就可以…...
OffscreenCanvas黑科技:让你的网页动画性能提升300%的配置指南
OffscreenCanvas黑科技:让你的网页动画性能提升300%的配置指南 当网页动画开始卡顿,用户的体验就会直线下降。传统Canvas渲染在主线程执行,复杂的图形运算很容易阻塞UI响应。OffscreenCanvas的出现彻底改变了这一局面——它允许你将绘制逻辑转…...
PySide6新手必看:从零开始用Python玩转Qt界面开发(附官方教程对比)
PySide6新手必看:从零开始用Python玩转Qt界面开发 在Python生态中,GUI开发一直是个让人又爱又恨的话题。当Tkinter显得过于简陋,而PyQt又面临商业授权困扰时,PySide6作为Qt官方推出的Python绑定,正成为越来越多开发者的…...
Python与OPC UA实战:高效读写PLC数据
1. 为什么选择Python操作OPC UA? 在工业自动化领域,PLC(可编程逻辑控制器)就像工厂的"大脑",而OPC UA则是让这个大脑与其他系统对话的"普通话"。作为Python开发者,我们经常需要从PLC读…...
矩阵分解(1)-- 从高斯消元到对称正定:LU、LDLT与Cholesky分解的算法演进与应用场景
1. 矩阵分解:为什么我们需要它? 想象一下你面前有一堆积木,乱七八糟地堆在一起。如果你想快速找到其中某一块积木,可能需要翻找很久。但如果有人帮你把这些积木按照颜色、形状分类摆放整齐,找起来就会容易得多。矩阵分…...
Gitee团队协作实战:从零到一掌握项目协同开发流程
1. 为什么选择Gitee进行团队协作开发 作为一个经历过多次团队协作开发的老手,我强烈推荐Gitee作为国内团队的代码托管平台。相比其他平台,Gitee的服务器在国内,访问速度更快,而且完全符合国内开发者的使用习惯。记得我第一次带团队…...
Qwerty Learner单词难度分级:智能调整训练强度的终极指南
Qwerty Learner单词难度分级:智能调整训练强度的终极指南 【免费下载链接】qwerty-learner 为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workers 项目地址: https://…...
万象视界灵坛惊艳效果展示:同一张宠物图在‘金毛犬’‘幼犬’‘户外玩耍’‘毛发蓬松’多维排序
万象视界灵坛惊艳效果展示:同一张宠物图在"金毛犬""幼犬""户外玩耍""毛发蓬松"多维排序 1. 效果展示开场 今天我要向大家展示万象视界灵坛这个神奇工具的实际效果。它就像一个视觉魔法师,能够深入理解图片中的…...
StructBERT WebUI效果实测:渐变紫界面+实时健康监控+高亮等级标签全展示
StructBERT WebUI效果实测:渐变紫界面实时健康监控高亮等级标签全展示 1. 工具概述 StructBERT文本相似度-中文-通用-WebUI是一个基于百度StructBERT大模型实现的高精度中文句子相似度计算工具。这个工具能够准确判断两个中文句子在语义上的相似程度,为…...
SEKA与AdaSEKA:破解大模型注意力引导难题的新方案
【导语:在自然语言处理领域,让大模型重点关注提示词某句话存在挑战。爱丁堡大学等团队提出SEKA及其自适应变体AdaSEKA,解决了现有方法的延迟和显存瓶颈问题,为大语言模型发展带来新思路。】SEKA:改写Key向量引导注意力…...
JAVA面试-equals与==的本质区别
Java中 与 equals() 的区别是面试和日常开发的核心知识点,其核心差异在于比较的对象: 是比较引用地址或基本类型的值,而 equals() 是比较对象的内容,但其默认行为与重写密切相关 。 为了清晰地理解,我们可以将比较场…...
