洛谷 P1372 又是毕业季I[数论/神坑规律题]
2024-08-23 15:03:28
题目描述
为了把毕业晚会办得更好,老师想要挑出默契程度最大的k个人参与毕业晚会彩排。可是如何挑呢?老师列出全班同学的号数1,2,……,n,并且相信k个人的默契程度便是他们的最大公约数(这不是迷信哦~)。这可难为了他,请你帮帮忙吧!
PS:一个数的最大公约数即本身。
输入输出格式
输入格式:
两个空格分开的正整数n和k。(n>=k>=1)
输出格式:
一个整数,为最大的默契值。
输入输出样例
说明
【题目来源】
lzn原创
【数据范围】
对于20%的数据,k<=2,n<=1000
对于另30%的数据,k<=10,n<=100
对于100%的数据,k<=1e9,n<=1e9(神犇学校,人数众多)
【分析】:
此题简化后,求的是:从1~n中取k个数,使这k个数的最大公约数最大
因为两个数成倍数关系时,它们的最大公因数是两数中的较小数,也就是相对来说最大公因数较大
返回题目,这k个数其实就是:x*1, x*2...... x*k,及x的1~k倍,但必须保证x*k小于n,在上述条件下,能知道,符合条件的最大的x就是答案,为了找出最大的x,必须使x*k尽量接近n,因为c++的整数除法有自动取整的功能,所以所有情况下,n/k都是最终答案
【代码】:
#include<iostream>
#include<cstdio>
using namespace std;
long long n,k;
int main()
{
cin>>n>>k;
cout<<n/k;
return ;
}
"你认真的吗?" "嗯。认真的。"
最新文章
- 在Windows上编译和调试CoreCLR
- Angular版本1.2.4在IE11的IE8模式下出错解决方案
- Linux系统中 安装Vmware Toolst工具
- 如何保证ArrayList线程安全
- glob模式
- Web Capacity Analysis Tool 压力测试工具使用笔记
- MySQL 简洁连接数据库方式
- const char*, char const*, char*const的区别
- Python异常处理实例
- JS遍历对象或者数组
- URL图片预览(createObjectURL)
- Django之验证码 + session 认证
- Struts2框架搭建
- js面向对象小结(工厂模式,构造函数,原型方法,继承)
- .net core 利用中间件处理常见的网站功能 包括 session、routers、重定向、重写和文件下载
- Tomcat8.5.24日志自动清理(maxDays)功能探究
- 【经验随笔】Restlet Client发送XML格式参数消息
- MySQL外键约束_ON DELETE CASCADE/ON UPDATE CASCADE
- Set和Map数据
- 关于伪类“:pseudo-class”和伪元素“::pseudo-element”的常见应用