CF1142A The Beatles
思路:
令p表示步数,l表示步长。由于p是使(l * p) % (n * k) == 0的最小的p,所以p = (n * k) / gcd(n * k, l).
设l = k * x + r,则由题意可知r有四种可能的取值,分别是(a + b) % k, ((-a + b) % k + k) % k, ((a - b) % k + k) % k, ((-a - b) % k + k) % k,枚举各种情况计算即可。
实现:
1 #include <bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 const ll INF = 0x3f3f3f3f3f3f3f3f; 5 ll n, k; 6 void solve(ll r, ll & minn, ll & maxn) 7 { 8 for (int x = r ? 0 : 1; k * x + r <= n * k; x++) 9 { 10 ll ans = n * k / __gcd(n * k, k * x + r); 11 minn = min(minn, ans); 12 maxn = max(maxn, ans); 13 } 14 } 15 int main() 16 { 17 ll a, b; 18 while (cin >> n >> k >> a >> b) 19 { 20 ll minn = INF, maxn = 0; 21 solve((a + b) % k, minn, maxn); 22 solve(((-a + b) % k + k) % k, minn, maxn); 23 solve(((a - b) % k + k) % k, minn, maxn); 24 solve(((-a - b) % k + k) % k, minn, maxn); 25 cout << minn << " " << maxn << endl; 26 } 27 return 0; 28 }
转载于:https://www.cnblogs.com/wangyiming/p/10870774.html
CF1142A The Beatles相关推荐
- CF1142A The Beatles 乱搞
Description 有n*k个城市排成一个环,其中第1,k+1,2k+1-个城市是关键点 现在有个人从s出发,每次走l步后停下.已知这个人从s出发后走了x步又回到了s,且s与其最近关键点的距离恰好 ...
- 给初级beatles热爱者提供的歌曲MP3下载
看到一个beatles(披头士)乐队的爱好者的论坛: http://www.beatles.cn/forum/Boards.asp 里面有一个下载列表,我都下载了.我听beatles的歌不多,但有几首 ...
- D - The Beatles CodeForces - 1143D
D - The Beatles CodeForces - 1143D Recently a Golden Circle of Beetlovers was found in Byteland. It ...
- D. The Beatles(思维+枚举)
D. The Beatles 题意: 有n*k个城市,每个城市间的距离是1km,在第1,1+k,1+k*2--,1+(n-1)*k个城市中有饭馆, 从城市s出发,每次走过的距离为l,问再次回到s时停了 ...
- Beatles小记-分布式数据流分析框架(一)
Author:放翁(文初) Email:fangweng@taobao.com Mblog:weibo.com/fangweng Blog: http://blog.csdn.net/cenwench ...
- CF1143D/1142A The Beatles
CF1143D/1142A The Beatles 将题目中所给条件用同余方程表示,可得 \(s-1\equiv \pm a,s+l-1\equiv \pm b\mod k\). 于是可得 \(l\e ...
- Codeforces Round #549 (Div. 2) D. The Beatles
D. The Beatles time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Codeforces Round #549 (Div. 2) 1143D. The Beatles
D. The Beatles time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- ACM题解——训练赛2_D - The Beatles
ACM题解--训练赛2_D - The Beatles 题目描述 Examples Input 2 3 1 1 Output 1 6 Input 3 2 0 0 Output 1 3 Input 1 ...
最新文章
- pyltp在ubuntu20.04下面的安装办法
- 怎么让员工服从管理_为什么现在的员工执行力和服从性越来越差,管理一严格就辞职?...
- 数据科学学习心得_学习数据科学时如何保持动力
- 第3章 Linux内核调试手段之三
- insserv: warning: script 'lampp' missing LSB tags and overrides
- 微型计算机原理目录,微型计算机原理与应用 目录
- 5G SA信令流程介绍
- ADXL345传感器小结
- 服务器UDIMM、LRDIMM、RDIMM三种内存的区别
- 零基础学C语言(C语言入门)
- 网易云web安全工程师第一天
- Redis启动多端口、运行多实例
- 应届毕业生找java初级开发工作需要掌握哪些知识或者技术?
- ubuntu系统声音_Ubuntu Linux系统提示声音设置
- P1914 小书童——凯撒密码(python实现)
- 计算机vb知识点,2020年全国计算机二级VB复习知识点:常用内部函数
- 图解HTTP 学习笔记
- 【无标题】北京车牌汽车只有人去世了才能办理继承手续吗?
- 如何在CSDN博客内容创作时设置首行缩进?
- 获得用户输入的一个整数N,计算并输出N的32次方
热门文章
- bo耳机h5使用说明_双十一买耳机看这里:OPPO领衔四款千元降噪耳机满足你需求_...
- “绿色单文件版UltroISO 未能找到虚拟光驱 ”的解决办法
- mysql 127.0.0.13306_MySQL 问题解决
- 在线办公实例:我如何在实际工作中使用超级表格
- 计算机病毒与网络安全的小报,关于网络安全手抄报内容
- 今天上qq空间看到一个有意思的东西,类似射线的效果
- ppt如何替换其他mo ban_这4个配图反例,拉低了你的PPT档次!
- 中移链合约常用开发介绍(三)工程化开发智能合约
- Git仓库完整迁移 含历史记录
- Unity动态加载外部服务器上的FBX模型