zoukankan      html  css  js  c++  java
  • Codeforces 946 B.Weird Subtraction Process

    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.

    代码:

     1 #include<iostream>
     2 #include<cstring>
     3 #include<cstdio>
     4 #include<cmath>
     5 #include<algorithm>
     6 #include<cstdlib>
     7 using namespace std;
     8 typedef long long ll;
     9 const int maxn=1e5+10;
    10 #define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    11 int main(){
    12     ll a,b;
    13     ios;
    14     cin>>a>>b;
    15     while(1){
    16         if(a==0||b==0) break;
    17         if(a>=2*b){
    18             a=a%(2*b);
    19         }
    20         else if(b>=2*a){
    21             b=b%(2*a);
    22         }
    23         else break;
    24     }
    25     cout<<a<<" "<<b<<endl;
    26 }
  • 相关阅读:
    Spring_配置 Bean(2)
    Spring_HelloWorld
    搭建 Spring 开发环境
    MongoDB快速入门(十三)- 聚合count、distinct和group
    缓存技术,封装好的缓存类
    HTTP协议详解
    C# 缓存技术
    Web Service 的工作原理
    webview长按保存图片
    android Webview 实现js调用java代码实现Activity跳转
  • 原文地址:https://www.cnblogs.com/ZERO-/p/9711403.html
Copyright © 2011-2022 走看看