洛谷 P5436 【XR-2】缘分 题解
P5436 【XR-2】缘分
题目背景
世间万物都置身于缘分编织的大网中。缘分未到,虽历经千劫,却不能相遇。缘分到了,在草原上都能等到一艘船。——《一禅小和尚》
题目描述
一禅希望知道他和师父之间的缘分大小。可是如何才能知道呢?
一禅想了个办法,他先和师父约定一个正整数 \(n\),接着他们各自在心里想一个不超过 \(n\) 的正整数。
一禅认为,他和师父心里想的这两个数的最小公倍数越大,则意味着他和师父之间的缘分越大。
师父觉得这个办法很合适,不过他想知道这两个数的最小公倍数最大会是多少。
师父的数学不太好,于是问一禅。一禅也觉得这个问题很困难,他希望你能告诉他答案。
输入格式
本题有多组数据。
第一行一个正整数 $T,表示数据组数。
接下来的 \(T\) 行,每行一个正整数 \(n\),表示一禅和师父约定的正整数。
输出格式
对每组数据,一行一个正整数,表示答案。
输入输出样例
输入 #1
1
3
输出 #1
6
说明/提示
【样例 1 说明】
不超过 3 的两个正整数的最小公倍数的最大值为 \(\mathrm{lcm}(2,3) = 6\)。
【数据规模与约定】
对 \(50\%\) 的数据,\(1 \le T,n \le 100\)。
对 \(100\%\) 的数据,\(1 \le T \le 100, 1 \le n \le 10^9\)。
【思路】
数学基础
一道很有意思的题目
找规律 + 有点贪心思想
因为这个需要找范围内两个数最大最小公倍数
所以很容易想什么暴力的手法或者
lcm(x,y) = xy / gcd(x,y)
等等的方法
但是在想这些方法的时候很容易忽略掉了最最最简单的方法
但却是很优的方法
你如果想的是前面的方法那么100%的数据很难过掉
但是
可以想一下
因为两个互质的数的最小公倍数是两个数相乘
这样是会让最小公倍数最大化
因为如果不互质的话
需要乘起来之后再去除以gcd
因为毕竟不是最小的还可以约分
所以互质的数一般是会比差不多大小的一对数更优的
所以尽量选取互质的数
而相邻的两个数一定是互质的
所以找两个相邻的数
这两个相邻的数越大乘出来的数就越大
所以选择n和n-1就是最优的这个时候输出n * (n - 1)就行了
完全没必要那么麻烦
注意要开long long !!!!
【完整代码】
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int T;
cin >> T;
long long n;
for(int i = 1;i <= T;++ i)
{
cin >> n;
if(n == 1)
cout << 1 << endl;
else
cout << n * (n - 1) << endl;
}
return 0;
}
洛谷 P5436 【XR-2】缘分 题解的更多相关文章
- 洛谷P1783 海滩防御 分析+题解代码
洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ...
- 洛谷P4047 [JSOI2010]部落划分题解
洛谷P4047 [JSOI2010]部落划分题解 题目描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落 ...
- 洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈)
洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1311990 原题地址:洛谷P1155 双栈排序 ...
- 洛谷10月月赛II题解
[咻咻咻] (https://www.luogu.org/contestnew/show/11616) 令人窒息的洛谷月赛,即将参加NOIp的我竟然只会一道题(也可以说一道也不会),最终145的我只能 ...
- [洛谷P1823]音乐会的等待 题解(单调栈)
[洛谷P1823]音乐会的等待 Description N个人正在排队进入一个音乐会.人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人.队列中任意两个人A和B,如果他们是相邻或他们之间没 ...
- BZOJ2527 & 洛谷3527:[Poi2011]Meteors——题解
+++++++++++++++++++++++++++++++++++++++++++ +本文作者:luyouqi233. + +欢迎访问我的博客:http://www.cnblogs.com/luy ...
- 洛谷 p1516 青蛙的约会 题解
dalao们真是太强了,吊打我无名蒟蒻 我连题解都看不懂,在此篇题解中,我尽量用语言描述,不用公式推导(dalao喜欢看公式的话绕道,这篇题解留给像我一样弱的) 进入正题 如果不会扩展欧里几德的话请先 ...
- 洛谷p2370yyy2015c01的U盘题解
没什么特殊的想法 就是看自己很久没有更新关于题解类的文章了而已 (其实这是我好久之前做的, 只是把它从洛谷博客搬到了这里而已) 题目 首先分析题目要二分 他长成这个亚子太二分了 所以就要二分 最好是先 ...
- 2019.06.17课件:[洛谷P1310]表达式的值 题解
P1310 表达式的值 题目描述 给你一个带括号的布尔表达式,其中+表示或操作|,*表示与操作&,先算*再算+.但是待操作的数字(布尔值)不输入. 求能使最终整个式子的值为0的方案数. 题外话 ...
- 洛谷P1310 表达式的值 题解 栈/后缀表达式的应用
题目链接:https://www.luogu.org/problem/P1310 本题涉及算法:栈.前缀表达式转后缀表达式,动态规划思想. 这道题目我思考了好长时间,第一时间让我做的话我也做不出来. ...
随机推荐
- 平衡二叉树,B树,B+树的概念及区别
1.平衡二叉树 由来:平衡二叉树是基于二分法的策略提高数据的查找速度的二叉树的数据结构 特点: 1.二叉树:意思是每个节点最多只能有两个子节点 2.平衡:因为平衡二叉树的查询性能与树的高度成正比, ...
- IntelliJ IDEA 2019 激活码 | 全产品 | 跨平台 | Goland | PhpStorm | Rider | CentOS | Windows
>>> 下载地址: https://kenkao.pipipan.com/fs/14896800-375468824 >>> 下载地址2: https://pan. ...
- Centos7 在线安装开发环境 jdk1.8+mysql+tomcat
写在最前 刚刚开始接触Linux,并折腾着在服务器上部署自己的项目,当然作为一个后端开发人员,必不可少的东西肯定是 JDK Mysql Tomcat容器 每天记录一天,每天进步一点点~~ 1.更新系统 ...
- 5_PHP数组_3_数组处理函数及其应用_3_数组指针函数
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. 数组指针函数 1. key() 函数 程序: <?php $interests[2] = "mus ...
- 2019年北航OO第三次博客总结
一.JML语言理论基础及其工具链 1. JML语言理论基础 JML是用于对Java程序进行规格化设计的一种表示语言,是一种行为接口规格语言(Behavior Interface Specificati ...
- Coldfusion Sql查询分组输出
<cfoutput query="myQry" group="date"> #date# <cfoutput> #detail# < ...
- 过渡属性transition
过渡属性:使元素变化过程可见 transition: all 1s;元素所有变化过程都可见 transition: 1s;元素所有变化过程都可见 transition: 指定属性 2s 1s;指定属性 ...
- 中兴软开C++面经(一站式西安)- 2019秋招
大概是9.6发短信邀请面试,但是6号有三个面试+一个在线笔试,就打算先去平安产险,看中途能不能再面个云从,中兴后面再面.然而,平安等了差不多4个小时才面完,期间云从面试官打来电话,只能说抱歉.中兴本来 ...
- 挂载nfs提示:mount.nfs: access denied by server while mounting...
出现此类错误原因大致为: 权限问题 防火墙机制问题 共享配置文件问题 搭建好nfs服务后,在client端进行挂载时,提示: [root@web1 media]# mount -t nfs 192.1 ...
- Python学习日记(八) 函数
函数的结构: 函数的返回值: 1.当函数执行时运到return关键字将不再往下执行 def func(): print("hello world!") print("he ...