ユークリッドの互除法メニューのサムネイル
合同式 Go編(paizaランク C 相当)

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

問題

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

ある自然数 N について、整数を N で割った余りに注目した数式を合同式と言います。
整数 A を N で割った余りと、整数 B を N で割った余りが等しい場合、「N を法として A と B は合同である」といい A ≡ B(mod N)と表されます。

例として、7 と 19 の間には 7 ≡ 19(mod 6) が成り立ちます。

自然数 N と整数 A が与えられるので、1 〜 100,000 の数のうち、N を法として A と合同なもの(A を含む)を、小さい方から順に全て出力してください。

入力される値

N A


・1 行で、自然数 N , 整数 A が半角スペース区切りで与えられます。


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

s_1
...


・1 〜 100,000 の数のうち、N を法として A と合同なもの s_1 ... を、 A を含め、小さい方から順に全て出力してください。
・また、出力の末尾には改行を入れてください。

条件

・1 ≦ N ≦ 100,000
・1 ≦ A ≦ 100,000

入力例1

10000 1

出力例1

1
10001
20001
30001
40001
50001
60001
70001
80001
90001

入力例2

28446 39582

出力例2

11136
39582
68028
96474

問題一覧へ戻る

  1. paizaラーニングトップ
  2. レベルアップ問題集
  3. ユークリッドの互除法メニュー(言語選択)
  4. 問題一覧 Go編
  5. 合同式 Go編
ページの先頭へ戻る