题意;

有一个n*m的网格阵,球从左上角开始在网格中碰撞,碰到边界就直角反弹,到达格子的角落结束,求途中经过一次的格子数。

代码:

//神马规律啊,设x表示球与垂直面的撞击次数,y为球与水平墙面的撞击次数,那么球走过的总的格子数就是x*(m-1)+m==
//y*(n-1)+n,规律发现,经过两次的格子数是x*y,那么如何求x,y呢,x=(n-1)/gcd(n-1,m-1)-1,y=(m-1)/gcd(n-1,m-1)-1;
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
typedef long long ll;
int gcd(ll x,ll y) { return x==?y:gcd(y%x,x); }
int main()
{
ll n,m;
while(scanf("%lld%lld",&n,&m)==){
ll x=n-,y=m-;
ll g=gcd(x,y);
x/=g;y/=g;
x--;y--;
printf("%lld\n",x*(m-)+m-x*y);
}
return ;
}

最新文章

  1. ES性能测试
  2. XenServer安全重启xapi的方法
  3. 10天学会phpWeChat——第六天:实现新闻的后台管理
  4. MyISAM与InnoDB两者之间怎么选择
  5. proj01总结:spring jdbc操作
  6. Codeforces Gym 100015A Another Rock-Paper-Scissors Problem 找规律
  7. linux svn authorization failed错误
  8. word在线编辑\生成图片(包含截图与合并)
  9. sql优化-hint的作用
  10. EC读书笔记系列之7:条款12 复制对象时勿忘其每一个成分
  11. python中打印文件名,行号,路径
  12. UrlRouting的理解
  13. AssemblyExecuteAdapter
  14. Linux内存描述之高端内存--Linux内存管理(五)
  15. maven的两种打包插件 ,防止 将无用文件打入META_INF,找不到主类的问题
  16. Python数据结构之实现队列
  17. Acegi框架
  18. oracle生成AWR报告方法
  19. Java的Properties类使用
  20. 如何在linux服务器上使用hanlp

热门文章

  1. Halcon如何保存仿射变换矩阵
  2. 字符串拆分和拼接(含list拼接)---基于python
  3. mysql 性能优化 20 条建议
  4. php 中关于pdo的使用
  5. unix系统内核优点
  6. lintcode-496-玩具工厂
  7. 倒计时60s 代码
  8. [cnbeta]微软最强数据中心级操作系统
  9. css3 flex属性flex-grow、flex-shrink、flex-basis学习笔记
  10. p2 休眠模式