※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。
詳しくはコチラ
なるべくわかりやすい解説を付けました。
問題3 1 行目で与えられる N 個の整数の入力 (paizaランク D 相当)
1 行目で、整数 N と、続けて N 個の整数 a_1, … , a_N が半角スペース区切りで与えられます。
a_1, … , a_N を改行区切りで出力してください。
- 入力される値
- 以下の形式で標準入力によって与えられます。
1 行目に整数 N と N 個の整数 a_1, … , a_N が半角スペース区切りで与えられます。N a_1 ... a_N
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
- 期待する出力
- a_1, … , a_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。a_1 ... a_N
条件
-
すべてのテストケースにおいて、以下の条件をみたします。 ・入力はすべて整数 ・1 ≦ N ≦ 100 ・1 ≦ a_i ≦ 10,000 (1 ≦ i ≦ N)
- 入力例1
-
13 5085 2923 8669 3231 7032 73 2683 8317 5545 9774 7179 2646 2470
- 出力例1
-
5085 2923 8669 3231 7032 73 2683 8317 5545 9774 7179 2646 2470
解答
# 空の配列で初期化 numbers = [] #入力値の最初をnに代入して、それ以外をnumbersに代入する n,numbers = gets.split.map.with_index { |val, i| i == 0 ? n = val : numbers << val.to_i } #出力する puts numbers
問題4 2 行目で与えられる N 個の整数の入力 (large) (paizaランク D 相当)
1 行目で整数 N が与えられます。
2 行目で、N 個の整数 a_1, … , a_N が半角スペース区切りで与えられます。
a_1, … , a_N を改行区切りで出力してください。
- 入力される値
- 以下の形式で標準入力によって与えられます。
1 行目に整数 N が、2 行目に整数 a_1, … , a_N が半角スペース区切りで与えられます。N a_1 ... a_N
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
- 期待する出力
- a_1, … , a_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。a_1 ... a_N
- 条件
-
すべてのテストケースにおいて、以下の条件をみたします。 ・入力はすべて整数 ・1 ≦ N ≦ 1,000 ・1 ≦ a_i ≦ 10,000 (1 ≦ i ≦ N)
- 入力例1
-
5 8 1 3 10 100
- 出力例1
-
8 1 3 10 100
解答
n = gets.to_i puts numbers = gets.split.map(&:to_i)
FINAL問題【N 個の整数の入力】1 行目で与えられる N 個の整数の入力 (large) (paizaランク D 相当)
1 行目で、整数 N と、続けて N 個の整数 a_1, … , a_N が半角スペース区切りで与えられます。
a_1, … , a_N を改行区切りで出力してください。
- 入力される値
- 以下の形式で標準入力によって与えられます。
1 行目に整数 N と N 個の整数 a_1, … , a_N が半角スペース区切りで与えられます。N a_1 ... a_N
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
- 期待する出力
- a_1, … , a_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。a_1 ... a_N
- 条件
-
すべてのテストケースにおいて、以下の条件をみたします。 ・入力はすべて整数 ・1 ≦ N ≦ 1,000 ・1 ≦ a_i ≦ 10,000 (1 ≦ i ≦ N)
- 入力例1
-
5 8 1 3 1 3
- 出力例1
-
8 1 3 1 3
解答
# 空の配列で初期化 numbers = [] #入力値の最初をnに代入して、それ以外をnumbersに代入する n,numbers = gets.split.map.with_index { |val, i| i == 0 ? n = val : numbers << val.to_i } #出力する puts numbers