zoukankan      html  css  js  c++  java
  • Educational Codeforces Round 39 (Rated for Div. 2) B. Weird Subtraction Process[数论/欧几里得算法]

    https://zh.wikipedia.org/wiki/%E8%BC%BE%E8%BD%89%E7%9B%B8%E9%99%A4%E6%B3%95

    取模也是一样的,就当多减几次.

    在欧几里得最初的描述中,商和余数是通过连续的减法来计算的,即从rk−2中不断减去rk−1直到小于rk−1。一个更高效的做法是使用整数除法和模除来计算商和余数:

    rk rk−2 mod rk−1
    在欧几里得定义的减法版本,取余运算被减法替换
    while (b!=0)
    {
    if (a>b)  a=a-b;
    else  b=b-a;
    }
    
    //结果是a 
    

    B. Weird Subtraction Process
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    You have two variables a and b. Consider the following sequence of actions performed with these variables:

    1. If a = 0 or b = 0, end the process. Otherwise, go to step 2;
    2. If a ≥ 2·b, then set the value of a to a - 2·b, and repeat step 1. Otherwise, go to step 3;
    3. If b ≥ 2·a, then set the value of b to b - 2·a, and repeat step 1. Otherwise, end the process.

    Initially the values of a and b are positive integers, and so the process will be finite.

    You have to determine the values of a and b after the process ends.

    Input

    The only line of the input contains two integers n and m (1 ≤ n, m ≤ 1018). n is the initial value of variable a, and m is the initial value of variable b.

    Output

    Print two integers — the values of a and b after the end of the process.

    Examples
    input
    Copy
    12 5
    output
    0 1
    input
    Copy
    31 12
    output
    7 12
    Note

    Explanations to the samples:

    1. a = 12, b = 5  a = 2, b = 5  a = 2, b = 1  a = 0, b = 1;
    2. a = 31, b = 12  a = 7, b = 12.
     
     


  • 相关阅读:
    Dp~Hrbust1426( 集训队的晚餐 )
    DP~数塔(hrbustoj1004)
    MyEclipse启动性能优化(----加快启动速度)
    很实用的php的缓存类文件示例
    PHP中9大缓存技术总结
    微信公众平台开发(76) 获取用户基本信息
    js中 onreadystatechange 和 onload的区别
    一个js文件导入js的函数
    PHP cURL实现模拟登录与采集使用方法详解教程
    Mysql清空表(truncate)与删除表中数据(delete)的区别
  • 原文地址:https://www.cnblogs.com/Roni-i/p/8530283.html
Copyright © 2011-2022 走看看