D. Make It Round(贪心 贡献 数学)[Codeforces Round #834 (Div. 3)]

news2024/11/24 13:40:47

题目如下:

在这里插入图片描述
在这里插入图片描述

思路 or 题解:

我们先考虑如何操作使结尾有最多的 0
我们不难发现:

2 * 5 = 10
10 = 10

我们是否只需要考虑 2 与 5 的贡献就行了
答案是肯定的!!!

约定:
c n t 5 因 数 5 的 个 数 cnt_5 因数 5 的个数 cnt55
c n t 2 因 数 2 的 个 数 cnt_2 因数 2 的个数 cnt22

如果 c n t 5 > c n t 2 cnt_5 > cnt_2 cnt5>cnt2 我们通过 2 去凑更多的 0,也就是 × 2 \times 2 ×2
如果 c n t 2 > c n t 5 cnt_2 > cnt_5 cnt2>cnt5 我们通过 5 去凑更多的 0,也就是 × 5 \times 5 ×5

最后 通过 10 去凑更多的 0,也就是 × 10 \times 10 ×10

我们再考虑如何 构造最大的数并且 后缀 0 的个数最多
我们通过上面操作 可以使 n × x n \times x n×x 成为后缀 0 个数最多 的一个合法数
如何才可以取最大呢?
k × x × n   ( k ≥ 1 ) k \times x \times n\ (k \ge 1) k×x×n (k1) 不会改变 后缀 0 个数
就是 将 x x x 变大就行, 让 x x x 取得最大值
x m a x = m / x × x x_{max} = m / x \times x xmax=m/x×x

所以答案就是:
n ∗ m / x × x n * m / x \times x nm/x×x

AC代码:

#define int long long
//#define ll long long
#define PII pair<int, int>
#define px first
#define py second
typedef std::mt19937  Random_mt19937;
Random_mt19937  rnd(time(0));
using namespace std;
const int mod = 1e9 + 7;
const int N = 100009;
int n, m;
void solve()
{
    cin >> n >> m;
    int cnt2 = 0, cnt5 = 0;
    int tt = n;
    while (tt % 2 == 0)
        cnt2++, tt /= 2;
    tt = n;
    while (tt % 5 == 0)
        cnt5++, tt /= 5;
    int x = 1;
    while (cnt5 > cnt2 && x * 2 <= m)
        cnt5--, x *= 2;
    while (cnt5 < cnt2 && x * 5 <= m)
        cnt2--, x *= 5;

    while (x * 10 <= m)
        x *= 10;
    cout << m / x * x * n << '\n';
}
signed main()
{
    buff;
    int _;
    cin >> _;
    while (_--)
        solve();
}   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/20721.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

kubernetes集群安装Ingress-nginx

文章目录概述搭建环境版本对应关系yaml文件安装实操演示常见问题外链地址概述 Ingress 公开从集群外部到集群内服务的 HTTP 和 HTTPS 路由。 流量路由由 Ingress 资源上定义的规则控制。 Kubernetes 通过 kube-proxy 服务实现了 Service 的对外发布及负载均衡&#xff0c;它的各…

2.3、传输方式

2.3、传输方式 2.3.1、串行&并行 2.3.3.1、串行传输 串行传输是指数据是一个比特一个比特依次发送的。因此&#xff0c;在发送端与接收端之间只需要一条数据传输线路即可 2.3.3.2、并行传输 一次发送 nnn 个比特。为此&#xff0c;在发送端和接收端之间需要有 nnn 条传输…

解决vscode各种异常格式化编译器配置

在vscode中创建vue文件时&#xff0c;若编辑代码时会出现间隔一段时间后自动的格式化内容&#xff0c;会很烦&#xff0c;经反复改查后无果&#xff0c;后来&#xff0c;对编辑器进行全面配置 首先原setting.json文件中的代码是这样的 { "files.autoSave": &qu…

定压补水装置 隔膜式定压补水装置

循环水中气体的来源及危害 A、气体来源 1、补水中夹带气体。 2、在定压不稳时吸入的气体。 3、放水时气体的侵入。 4、管道阀门等设备跑冒滴漏时侵入。 B、气体存在的危害 1、容易形成气阻&#xff0c;增加运营成本。 水中气体不及时排除&#xff0c;它所形成空气袋或气柱&am…

Vue学习(九)——混入

前言 混入&#xff08;mixin&#xff09;的使用非常简单&#xff0c;其实我原本打算直接写插件&#xff08;plugin&#xff09;的&#xff0c;但考虑到插件的使用范围也包括混入和自定义指令&#xff0c;还是先讲讲这两个的基本概念。 混入在我看来&#xff0c;就是给组件加上…

maya 卡通草地制作方法笔记

maya 卡通草地制作方法笔记 一、概述 maya制作草地的方法很多&#xff0c;有粒子替代种子法&#xff0c;painter笔刷法&#xff0c;xgen毛发模拟法&#xff0c;也有直接批量大量代理物体复制法等等。这次讨论的是用maya的painter笔刷法&#xff0c;审核制作卡通类简单的草地效…

Linux 进程概念 —— 冯 • 诺依曼体系结构

文章目录1. 冯诺依曼体系结构&#x1f351; 输入、输出设备&#x1f351; 中央处理器&#x1f351; 内存&#x1f351; 总线&#x1f351; 局部性原理&#x1f351; 总结2. 数据的流动过程1. 冯诺依曼体系结构 在 1945 年冯诺依曼和其他计算机科学家们提出了计算机具体实现的报…

URL和URI的区别

文章目录URLSchemeAuthorityPath to resourceParametersAnchorURL和URI参考URL 以下是 URL 的一些示例&#xff1a; https://developer.mozilla.org https://developer.mozilla.org/en-US/docs/Learn/ https://developer.mozilla.org/en-US/search?qURL这些 URL 中的任何一个…

[附源码]java毕业设计水库水面漂浮物WEB系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

攻防世界Check

Check 题目描述&#xff1a;套娃&#xff1f; 题目环境&#xff1a;https://download.csdn.net/download/m0_59188912/87097474 将图片放入winhex中打开&#xff0c;文件头与文件尾均正常&#xff0c;文件大小也正常。 判断为lsb隐写&#xff0c;查看三个颜色的plane 0通道&…

mysql复习【面试】

mysql复习【面试】前言mysql复习第08章 索引的创建与设计原则3.索引设计原则3.2哪些情况下适合创建索引3.4 哪些情况不适合创建索引第10章 索引优化与查询优化2.索引失效案例8.覆盖索引9. 如何给字符串添加索引10. 索引下推11. 普通索引 vs 唯一索引12.其他的优化策略13. 淘宝数…

深入浅出学习透析Nginx服务器的基本原理和配置指南「负载均衡篇」

负载均衡 之前的章节内容中【深入浅出学习透析Nginx服务器的基本原理和配置指南「初级实践篇 」】和 【深入浅出学习透析Nginx服务器的基本原理和配置指南「进阶实践篇」】&#xff0c;我们采用的代理仅仅指向一个服务器。但是网站在实际运营过程中&#xff0c;大部分都是以集群…

【万兴PDF专家】OCR引擎的离线安装方法,让你不受网速的折磨,PDF给OCR成可搜索的高级PDF,牛逼了我的万兴

一、问题背景 万兴PDF是一个很好用的PDF工具&#xff0c;它不仅可以实现PDF的浏览和批注常见功能&#xff0c;还具有OCR、压缩PDF&#xff0c;乃至批量化的功能。 因此&#xff0c;实在是一个非常值得花钱去买的PDF工具包&#xff01;&#xff01; 但是&#xff0c;软件里的O…

Prometheus与Grafana监控SpringBoot应用

Prometheus与Grafana监控SpringBoot应用 1.SpringBoot应用暴露端点 2.转换成Prometheus能解析得数据 3.向Prometheus注册时赋予项目名 docker部署 4701模板

七.STM32F030C8T6 MCU开发之TIMER模块级联组成32BIT计时器案例

七.STM32F030C8T6 MCU开发之TIMER模块级联组成32BIT计时器案例 文章目录七.STM32F030C8T6 MCU开发之TIMER模块级联组成32BIT计时器案例0.总体功能概述1.TIM硬件介绍1.1 TIM1/3级联硬件介绍1.1.1 主从模式介绍1.1.2 TIM1为主&#xff0c;TIM3为从&#xff0c;TIM3 的输入触发源选…

【计算机网络】习题(三)—— 数据链路层

【计算机网络】习题&#xff08;三&#xff09;—— 数据链路层2&#xff0e;数据链路层协议的功能不包括&#xff08;). A&#xff0e;定义数据格式 B。提供结点之间的可靠传输 C.控制对物理传输介质的访问 D.为终端结点隐蔽物理传输的细节 2.D 主是是数据链路层的主要功能包…

SECCON CTF 2022 web复现

skipinx 知识点&#xff1a;qs 参数解析错误qs简介 一句话介绍就是&#xff1a;qs是负责url参数转化的js库&#xff0c;当然也可以说是查询字符串解析和字符串化库。 详细了解移步&#xff1a;https://www.npmjs.com/package/qs qs简单用法 例如&#xff1a;我们 url 参数…

NTPv4协议解析

前言 本文的撰写基于RFC5905.NTP 是时间网络控制协议&#xff0c;V4版本相交V3版本&#xff0c;修复了V3存在的一些问题。尤其是NTPV4的拓展时间戳鼓励使用浮动双数据类型&#xff0c;这样使得NTP能够更好的支持1ns的场景&#xff0c;轮询间隔也从上一代的最多1024s拓展到了36…

上位机通信标准-OPC

OPC通信&#xff0c;基于OPC的通信是一种通信整合方案&#xff0c;通过OPC标准&#xff0c;整合各类协议并统一化接口。 1、上位机通信环境 - 品牌、各类繁多 - 通信环境的统一&#xff1a;OPC 2、OPC - 什么是OPC&#xff1a;OLE for Process Control Windows插件&#x…

数字集成电路设计(五、仿真验证与 Testbench 编写)(一)

文章目录引言1. Verilog HDL 电路仿真和验证概述2. Verilog HDL测试程序设计基础2.1 Testbench及其结构2.2 测试平台举例2.2.1 组合电路仿真环境搭建2.2.2 时序电路仿真环境搭建2.3 Verilog HDL仿真结果确认2.4 Verilog HDL仿真效率3. 与仿真相关的系统任务3.1 $display和\$wri…