传送门:

题意:题目给出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相关推荐

  1. 给初级beatles热爱者提供的歌曲MP3下载

    看到一个beatles(披头士)乐队的爱好者的论坛: http://www.beatles.cn/forum/Boards.asp 里面有一个下载列表,我都下载了.我听beatles的歌不多,但有几首 ...

  2. D - The Beatles CodeForces - 1143D

    D - The Beatles CodeForces - 1143D Recently a Golden Circle of Beetlovers was found in Byteland. It ...

  3. D. The Beatles(思维+枚举)

    D. The Beatles 题意: 有n*k个城市,每个城市间的距离是1km,在第1,1+k,1+k*2--,1+(n-1)*k个城市中有饭馆, 从城市s出发,每次走过的距离为l,问再次回到s时停了 ...

  4. Beatles小记-分布式数据流分析框架(一)

    Author:放翁(文初) Email:fangweng@taobao.com Mblog:weibo.com/fangweng Blog: http://blog.csdn.net/cenwench ...

  5. CF1143D/1142A The Beatles

    CF1143D/1142A The Beatles 将题目中所给条件用同余方程表示,可得 \(s-1\equiv \pm a,s+l-1\equiv \pm b\mod k\). 于是可得 \(l\e ...

  6. 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 ...

  7. 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 ...

  8. 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 ...

  9. 【资源分享】The Beatles(披头士)乐队所有专辑带封面

    资源免费分享,送给各位披头士的粉丝.只求个赞可以吗. 复制这段内容后打开百度网盘手机App,操作更方便哦 链接:https://pan.baidu.com/s/1N5BXA18JeaznYhRRy6k ...

  10. D. The Beatles

    链接 [https://codeforces.com/contest/1143/problem/D] 题意 就是有nkcity,n个面包店 第一个面包店在1city,第x个在(x-1)k+1city ...

最新文章

  1. 最小割 ---- 最大密度子图(最大权值闭合子图)
  2. LeetCode Decode Ways
  3. logback无法生成日志文件之谜
  4. Android学习笔记2---多界面切换
  5. information_schema系列八(事物,锁)
  6. 理解严格模式下JavaScript的this指向的变化
  7. ESRI ArcGIS 9.0系列软件报价(转)
  8. Informix onstat 常用的监控选项解释
  9. 矩阵对应元素相乘_图网络(GNN)前传 : 图与矩阵的兄弟情结
  10. 水泵smart200编程_第453期丨PLC梯形图编程很low?星三角启动,转换角型时电机反转是真的吗?...
  11. java poi excel转pdf_java_poi导入导出excel.pdf
  12. 总结js实现字符串转JSON对象的几种方法
  13. iOS 导航栏透明度 监听导航栏返回进度
  14. 爆炒猪肚的做法 爆炒猪肚怎样炒才脆
  15. 邓俊辉 数据结构与算法C++版 第十三章 串 ADT
  16. 家用洗地机器人哪个牌子好性价比高?家用洗地机品牌排行榜前十名
  17. 引用 神奇的象数疗法
  18. excel表格xlsx解密方法,忘记excel表格xlsx密码怎么办?
  19. 10以内转大写汉字java_1.输入一个0-10之间的阿拉伯数字,将其转换成中文大写数...
  20. dct变换编码研究课设实验报告_制作电磁铁实验报告单_相关文章专题_写写帮文库...

热门文章

  1. 237_自定义抽签器三
  2. 证件照怎么用手机拍?证件照拍照攻略|证件照生成器
  3. 如何学习Windows编程
  4. IMX6基于yocto3.14.28移植声卡wm8960
  5. 三次进入ESI全球前1%,东大计算机实力如何?
  6. pta c语言 选择法排序
  7. 74LS161构成10进制计数器
  8. 数学连续和导数的定义
  9. 中科大刘淇:从自适应学习的角度理解AI+教育
  10. android的今日头条软件怎么删除,如何把今日头条账号注销 退出账号的方法教程[多图]...