zoukankan      html  css  js  c++  java
  • 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 ",ans);
      }
      return 0;
    }

    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    Sikulix 多个相似图片的选择
    Sikulix选取相对位置的图片或对象
    Sikulix 实用方法
    两个Excel内容比较
    SIkulix在Eclipse中的使用
    Sikulix IDE简介
    安装Sikulix
    Sikuli简介
    建立连接ALM的xml config文件
    XML序列化成对象
  • 原文地址:https://www.cnblogs.com/ldudxy/p/10045537.html
Copyright © 2011-2022 走看看