1. paizaラーニングトップ
  2. レベルアップ問題集
  3. ユークリッドの互除法メニュー応用編(言語選択)
  4. 問題一覧 Scala編
  5. 直線の方程式

ユークリッドの互除法メニュー応用編のサムネイル
直線の方程式 (paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

xy 平面上の直線の方程式 ax + by + c = 0 のうち a, b が与えられるので、x, y の切片が共に格子点となるような 1 以上の c のうち、最小の値を求めてください。

・切片とは
ある直線に x = 0 を代入して得られる座標(x,y) もしくは、y = 0 を代入して得られる座標(x,y) のこと。

・格子点とは
x,y 座標が共に整数であるような点のこと。

入力される値

a b


・1 行で、整数 a, b が与えられます。


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

・x, y の切片が共に格子点となるような 0 以上の c のうち、最小の値を 1 行で出力してください。
・また、出力の末尾には改行を入れてください。

条件

・1 ≦ a ≦ 100,000
・1 ≦ b ≦ 100,000

入力例1

3 2

出力例1

6

入力例2

7 7

出力例2

7

問題一覧へ戻る

ページの先頭へ戻る