Mail.Ru Cup 2018 Round 2C(__gcd)
#include<bits/stdc++.h>
using namespace std;
long long mx(long long l1,long long r1,long long l2,long long r2){
return max(0LL,min(r1,r2)-max(l1,l2)+1);
}
int main(){
long long l1,r1,t1,l2,r2,t2;
while(~scanf("%lld%lld%lld%lld%lld%lld",&l1,&r1,&t1,&l2,&r2,&t2)){
l1++;//从0开始加一变为从1开始
r1++;
l2++;
r2++;
long long mnsuojin=__gcd(t1,t2);//有最大公约数又对不齐会导致一直对不齐(某些情况),mnsuojin是可移动的最小距离
long long daierta=abs(r1-r2)/mnsuojin*mnsuojin;//避免超时所以一步到位
long long ans=0;
if(r1==r2)
ans=mx(l1,r1,l2,r2);
else if(r1<r2){
r1+=daierta;
l1+=daierta;
ans=max(mx(l1,r1,l2,r2),mx(l1+mnsuojin,r1+mnsuojin,l2,r2));//前者和后者必定存在一个最优解
}
else if(r1>r2){
r2+=daierta;
l2+=daierta;
ans=max(mx(l1,r1,l2,r2),mx(l1,r1,l2+mnsuojin,r2+mnsuojin));
}
printf("%lld\n",ans);
}
return 0;
}
最新文章
- windows下使用VS2015编译V8 JavaScript引擎(v5.5 - 2016/09)
- jsp页面中引用其他页面的方法
- 字幕文件 WebVTT 与 srt 之间的互相转化
- 转:HashMap深度解析(一)
- python 获取当前调用函数名等log信息
- React表单组件自定义-可控及不可控组件
- bjfu1238 卡特兰数取余
- 【Unity Shaders】使用Unity Render Textures实现画面特效——画面特效中的亮度、饱和度和对照度
- linux学习(一个) 在unbuntu通过添加新的用户
- XML&;AJAX
- GridContrl 通用类
- java前台线程和后台线程
- 配置JDK和Tomcat环境变量
- Ado.net简单快捷帮助类
- shell tr命令
- LLDP协议、STP协议 笔记
- codeforces 766E Mahmoud and a xor trip
- angular学习笔记(六)-非入侵式javascript
- CSS实现文字半透明显示在图片上方法
- Establishing SSL connection without server&#39;s identity verification is not recommended.