Thực hiện phép trừ

Xem dạng PDF

Gửi bài giải

Điểm: 5,00
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++

Bạn có hai biến a và b . Hãy xem xét chuỗi hành động sau đây được thực hiện với các biến sau:

  1. Nếu a  = 0 hoặc b  = 0 , kết thúc quá trình. Nếu không, hãy đến bước 2 ;
  2. Nếu a  ≥ 2 · b , sau đó đặt giá trị của a thành a  - 2 · b và lặp lại bước 1 . Nếu không, hãy đến bước 3 ;
  3. Nếu b ≥ 2 · a , sau đó đặt giá trị của b thành b  - 2 · a và lặp lại bước 1 . Nếu không, kết thúc quá trình.

Ban đầu các giá trị của a và b là các số nguyên dương, và do đó quá trình sẽ là hữu hạn.

Bạn phải xác định giá trị của a và b sau khi quá trình kết thúc.

Input

  • Dòng duy nhất của đầu vào chứa hai số nguyên ~n~ và ~m~ ~(1 \le  n, m  \le 10^{18})~. ~n~ là giá trị ban đầu của biến ~a~ và ~m~ là giá trị ban đầu của biến ~b~,

Output

  • In hai số nguyên - giá trị của ~a~ và ~b~ sau khi kết thúc quá trình.

Scoring

  • Không có giới hạn gì thêm

Ví dụ

Input
12 5
Output
0 1
Input
31 12
Output
7 12

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.