A-the Beatles
传送门:
题意:题目给出n,k分别代表在这个环中饭店的个数和两个饭店相离的距离。然后再给出一组a,b分别代表在某一点s里最近饭店的距离和在这个s点走一步之后到达的点离最近饭店的距离。
然后问这个人再次走回到s点的最大步数跟最小步数。。。。由题意可知 城市点数有 n*k个,那么我们如何去确定当前的s点的可能值呢?
枚举可得!!!为什么? 饭店的位置在1,1+k,1+2k.......
s的下一个点最近的饭店有两种情况,1:跟离s点最近的饭店是一样的 那么我们就可以求出 l=1+mk+b- s的位置
2:两个的饭店是不一样的,那么就有下一个饭店的值减去b得到 s的下一个点,那么用这个点的坐标减去s的坐标就能得到 l 。s的坐标为 1+mk+a
那么知道步长了就是枚举找答案就对了。
由初等数论可知 从某个点出发,知道步长跟环的大小,那么跑回原来点的位置的次数为 n*m/gcd(n*m,步长)
这道div1“签到题”就可解了 (本蒟蒻发现最近打比赛怎么打都不满意,决定一心磕爆div1来增强自己,奈何这A题搞了三个小时。。。。希望自己能坚持每天都刷div1)
#include <bits/stdc++.h> using namespace std; #define ll long long #define re register const int N=1e6+10; void read(int &a) {a=0;int d=1;char ch;while(ch=getchar(),ch>'9'||ch<'0')if(ch=='-')d=-1;a=ch-'0';while(ch=getchar(),ch>='0'&&ch<='9')a=a*10+ch-'0';a*=d; } ll gcd(ll a,ll b) {return !b?a:gcd(b,a%b); } int main() {int n,m,a,b;read(n);read(m);read(a);read(b);a++;///第一个点的坐标不是0,所以a++ll t=1ll*n*m;ll ans1=-1,ans2=1ll*n*m+1;for(re int i=0;i<n;i++){ll t1=1ll*i*m+1+b;///算出可能的s+l值ll t2=1ll*(i+1)*m+1-b;t1-=a;///b所在的位置-a得到步长t2-=a;ans1=max(ans1,t/gcd(abs(t1),t));ans2=min(ans2,t/gcd(abs(t1),t));ans1=max(ans1,t/gcd(abs(t2),t));ans2=min(ans2,t/gcd(abs(t2),t));}cout<<ans2<<" "<<ans1<<endl;return 0; }
转载于:https://www.cnblogs.com/acm1ruoji/p/10758955.html
A-the Beatles相关推荐
- 给初级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 ...
- 【资源分享】The Beatles(披头士)乐队所有专辑带封面
资源免费分享,送给各位披头士的粉丝.只求个赞可以吗. 复制这段内容后打开百度网盘手机App,操作更方便哦 链接:https://pan.baidu.com/s/1N5BXA18JeaznYhRRy6k ...
- D. The Beatles
链接 [https://codeforces.com/contest/1143/problem/D] 题意 就是有nkcity,n个面包店 第一个面包店在1city,第x个在(x-1)k+1city ...
最新文章
- 最小割 ---- 最大密度子图(最大权值闭合子图)
- LeetCode Decode Ways
- logback无法生成日志文件之谜
- Android学习笔记2---多界面切换
- information_schema系列八(事物,锁)
- 理解严格模式下JavaScript的this指向的变化
- ESRI ArcGIS 9.0系列软件报价(转)
- Informix onstat 常用的监控选项解释
- 矩阵对应元素相乘_图网络(GNN)前传 : 图与矩阵的兄弟情结
- 水泵smart200编程_第453期丨PLC梯形图编程很low?星三角启动,转换角型时电机反转是真的吗?...
- java poi excel转pdf_java_poi导入导出excel.pdf
- 总结js实现字符串转JSON对象的几种方法
- iOS 导航栏透明度 监听导航栏返回进度
- 爆炒猪肚的做法 爆炒猪肚怎样炒才脆
- 邓俊辉 数据结构与算法C++版 第十三章 串 ADT
- 家用洗地机器人哪个牌子好性价比高?家用洗地机品牌排行榜前十名
- 引用 神奇的象数疗法
- excel表格xlsx解密方法,忘记excel表格xlsx密码怎么办?
- 10以内转大写汉字java_1.输入一个0-10之间的阿拉伯数字,将其转换成中文大写数...
- dct变换编码研究课设实验报告_制作电磁铁实验报告单_相关文章专题_写写帮文库...