CF946B.Weird Subtraction Process

普及-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

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.

你有两个变量 aa 和 bb。考虑对这两个变量执行如下操作序列:

  1. 若 a=0a = 0 或 b=0b = 0,则结束该过程;否则,进入步骤 2;
  2. 若 a≥2ba \geq 2b,则将 aa 的值设为 a−2ba - 2b,并返回步骤 1;否则,进入步骤 3;
  3. 若 b≥2ab \geq 2a,则将 bb 的值设为 b−2ab - 2a,并返回步骤 1;否则,结束该过程。

初始时,aa 和 bb 均为正整数,因此该过程必在有限步内终止。

你需要确定该过程结束时 aa 和 bb 的值。

输入格式

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.

输入仅包含一行,其中有两个整数 nn 和 mm(1 ≤ n, m ≤ 10181 \leq n, m \leq 10^{18})。nn 是变量 aa 的初始值,mm 是变量 bb 的初始值。

输出格式

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

输出两个整数——过程结束后 a 和 b 的值。

输入输出样例

  • 输入#1

    12 5

    输出#1

    0 1
  • 输入#2

    31 12

    输出#2

    7 12

说明/提示

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. a=12a = 12, b=5b = 5 a=2a = 2, b=5b = 5 a=2a = 2, b=1b = 1 a=0a = 0, b=1b = 1;
  2. a=31a = 31, b=12b = 12 a=7a = 7, b=12b = 12。

输入解题思路,AI测评打分。不知道怎么写?

首页