Programming note」カテゴリーアーカイブ

paizaLvアップ問題と解答(標準入力16)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題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
・a_i (1 ≦ i ≦ N) は 1 以上 1,000 以下の実数
・また a_i は小数点以下 3 桁までの実数
入力例1
5 8.13 81.3 813 0.813 1.381
出力例1
8.13
81.3
813
0.813
1.381

解答

# 1行目の入力値(数値)を変数に代入する 
numbers = gets.split
# 配列の最初を取り出す
numbers.shift
 # 入力を1行ずつ受け取り出力を5回繰り返す 
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 ≦ 10,000
・a_i (1 ≦ i ≦ N) は 1 以上 1,000 以下の実数
・また a_i は小数点以下 3 桁までの実数
入力例1
5
0.813 8.13 8 1.83 3.81
出力例1
0.813
8.13
8
1.83
3.81

解答

# 1行目の入力値(数値)を変数に代入する 
n = gets.to_i 
# 半角スペースで刻みの入力を受け取り出力する 
puts gets.split

FINAL問題 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 ≦ 10,000
・a_i (1 ≦ i ≦ N) は 1 以上 1,000 以下の実数
・また a_i は小数点以下 3 桁までの実数
入力例1
5 8.13 81.3 813 0.813 1.381
出力例1
8.13
81.3
813
0.813
1.381

解答

# 1行目の入力値(数値)を変数に代入する 
numbers = gets.split
# 配列の最初を取り出す
numbers.shift
# 入力を1行ずつ受け取り出力を5回繰り返す 
puts numbers

paizaLvアップ問題と解答(標準入力14)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題1 改行区切りでの N 個の実数の入力 (paizaランク D 相当)

1 行目に整数 N が与えられます。
2 行目以降に、N 個の実数 a_1, … , a_N が N 行で与えられます。
a_1, … , a_N を改行区切りでそのまま出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N が、 2 行目から (N + 1) 行目に実数 a_1, … , a_N が N 行で与えられます。

N
a_1
...
a_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a_1, … , a_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a_1
...
a_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 100
・a_i (1 ≦ i ≦ N) は 1 以上 1,000 以下の実数
・また a_i は小数点以下 3 桁までの実数
入力例1
5
0.813
8.13
81.3
813
8138
出力例1
0.813
8.13
81.3
813
8138

解答

# 1行目の入力値(数値)を変数に代入する 
n = gets.to_i
# 入力を1行ずつ受け取り出力を5回繰り返す 
n.times { puts gets.split }

問題2 2 行目で与えられる N 個の実数の入力 (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 ≤ 100
・a_i (1 ≤ i ≤ N) は 1 以上 1,000 以下の実数
・また a_i は小数点以下 3 桁までの実数
入力例1
5
0.813 8.13 8 1.83 3.81
出力例1
0.813
8.13
8
1.83
3.81

解答

# 1行目の入力値(数値)を変数に代入する 
n = gets.to_i
# 半角スペースで刻みの入力を受け取り出力する
puts gets.split

paizaLvアップ問題と解答(標準入力13)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題3 1 行目で与えられる N 個の文字列の入力 (paizaランク D 相当)

1 行目で、整数 N と、続けて N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。
s_1, … , s_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N と N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。

N s_1 ... s_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
s_1, … , s_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

s_1
...
s_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 100
・s_i (1 ≦ i ≦ N) は数字または大文字・小文字のアルファベットからなる長さ 1 以上 10 以下の文字列
入力例1
5 paiza 813 paiza813 Hello World!
出力例1
paiza
813
paiza813
Hello
World!

解答 配列として受け取り[“5”, “paiza”, “813”, “paiza813”, “Hello”, “World!”]

.shiftで配列の最初を取り出す

出力する→[ “paiza”, “813”, “paiza813”, “Hello”, “World!”]

# 1行目の半角スペースで刻みの入力値(数値)を変数に代入する 
strings = gets.split
# 配列の最初の5を取り出す(破壊的に) 
strings.shift
# 出力する
puts strings

問題4 2 行目で与えられる N 個の文字列の入力 (large) (paizaランク D 相当)

1 行目に整数 N が与えられます。
2 行目に、N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。
s_1, … , s_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N が、2 行目に文字列 s_1, … , s_N が半角スペース区切りで与えられます。

N
s_1 ... s_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
s_1, … , s_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

s_1
...
s_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 10,000
・s_i (1 ≦ i ≦ N) は数字または大文字・小文字のアルファベットからなる長さ 1 以上 10 以下の文字列
入力例1
5
813 paiza pa13 Hello World!
出力例1
813
paiza
pa13
Hello
World!

解答

# 1行目の入力値(数値)を変数に代入する 
n = gets.to_i
# 半角スペースで刻みの入力受け取り出力する 
puts gets.split

FINAL問題【N個の文字列の入力】1 行目で与えられる N 個の文字列の入力 (large) (paizaランク D 相当)

1 行目に、整数 N と、続けて N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。
s_1, … , s_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N と N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。

N s_1 ... s_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
s_1, … , s_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

s_1
...
s_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 10,000
・s_i (1 ≦ i ≦ N) は数字または大文字・小文字のアルファベットからなる長さ 1 以上 10 以下の文字列
入力例1
5 813 paiza 8iza Hello Paiza!
出力例1
813
paiza
8iza
Hello
Paiza!

解答 問題3と同じ

# 1行目の半角スペースで刻みの入力値(数値)を変数に代入する 
strings = gets.split 
# 配列の最初の5を取り出す(破壊的に) 
strings.shift 
# 出力する 
puts strings

paizaLvアップ問題と解答(標準入力12)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題1 改行区切りでの N 個の文字列の入力 (paizaランク D 相当)

1 行目に整数 N が与えられます。
2 行目以降に、N 個の文字列 s_1, … , s_N が N 行で与えられます。
s_1, … , s_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N が、 2 行目から (N + 1) 行目に文字列 s_1, … , s_N が N 行で与えられます。

N
s_1
...
s_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
s_1, … , s_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

s_1
...
s_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 100
・s_i (1 ≦ i ≦ N) は数字または大文字・小文字のアルファベットからなる長さ 1 以上 10 以下の文字列
入力例1
5
hello
paiza
813
paiza2020
Nice
出力例1
hello
paiza
813
paiza2020
Nice

解答

# 1行目の入力値(数値)を変数に代入する
n = gets.to_i
# 入力を1行ずつ受け取り出力を5回繰り返す
n.times { puts gets.chomp }

問題2 2 行目で与えられる N 個の文字列の入力 (paizaランク D 相当)

1 行目に整数 N が与えられます。
2 行目に、N 個の文字列 s_1, … , s_N が半角スペース区切りで与えられます。
s_1, … , s_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N が、 2 行目に文字列 s_1, … , s_N が半角スペース区切りで与えられます。

N
s_1 ... s_N

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
s_1, … , s_N を改行区切りで出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

s_1
...
s_N
条件
すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 100
・s_i (1 ≦ i ≦ N) は数字または大文字・小文字のアルファベットからなる長さ 1 以上 10 以下の文字列
入力例1
5
paiza 813 paiza813 hello813 good
出力例1
paiza
813
paiza813
hello813
good

解答

# 1行目の入力値(数値)を変数に代入する
n = gets.to_i
# 半角スペース刻みで与えられる入力値を受け取り出力する
puts strings = gets.split

paizaLvアップ問題と解答(標準入力11)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題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

paizaLvアップ問題と解答(標準入力10)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題1 改行区切りでの N 個の整数の入力 (paizaランク D 相当)

1 行目で整数 N が与えられます。
2 行目以降で、N 個の整数 a_1, … , a_N が N 行で与えられます。
a_1, … , a_N を改行区切りで出力してください。

入力される値
以下の形式で標準入力によって与えられます。
1 行目に整数 N が、2 行目から (N + 1) 行目に整数 a_1, … , a_N が 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
20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
出力例1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

解答 1行目の入力値(数値)を受け取り変数に代入する
20回1行ずつ入力値を出力することを繰り返す

n = gets.to_i
n.times { puts gets.to_i }

問題2 2 行目で与えられる N 個の整数の入力 (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 ≦ 100
・1 ≦ a_i ≦ 10,000 (1 ≦ i ≦ N)
入力例1
6
6561 3785 6338 9568 4956 557

出力例1
6561
3785
6338
9568
4956
557

解答

n = gets.to_i 
numbers = gets.split.map(&:to_i)
n.times { |i| puts numbers[i] }

paizaLvアップ問題と解答(標準入力9)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題4 10 個の整数の半角スペース区切りの入力 (paizaランク D 相当)

整数 a_1, a_2, … , a_9, a_10 が半角スペース区切りで与えられるので、改行区切りにして 10 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a_1, a_2, … , a_9, a_10 が 半角スペース区切りで与えられます。

a_1 a_2 ... a_9 a_10

入力値最終行の末尾に改行が1つ入ります。

文字列は標準入力から渡されます。

期待する出力
a_1, a_2, … , a_9, a_10 を 10 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a_1
a_2
...
a_9
a_10
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a_1, a_2, ... , a_9, a_10 は 1 以上 10,000 以下の整数
入力例1
10 9 8 7 6 5 4 3 2 1
出力例1
10
9
8
7
6
5
4
3
2
1

解答 半角スペース刻みで与えられる入力値を配列にして受け取り→[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]putsで出力する

numbers = gets.split.map(&:to_i) 
puts numbers

FINAL問題  1,000個の整数の半角スペース区切りの入力

整数 a_1, a_2, … , a_999, a_1000 が半角スペース区切りで与えられるので、改行区切りにして 1000 行で出力してください。

期待する出力

a_1, a_2, … , a_999, a_1000 を 1000 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

入力例

5294 3387 953 7129 ・・・ 4344

期待する出力

5294 3387 953 7129 ・・・ 4344

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入してputsで出力する

numbers = readlines.map(&:to_i)
puts numbers

paizaLvアップ問題と解答(標準入力8)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題1 1 つの整数の入力 (paizaランク D 相当)

整数 a が与えられるので a を出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a が 1 行で与えられます。

a

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a を 1 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a は 1 以上 10,000 以下の整数

入力例1
813
出力例1
813

解答

numbers = gets.to_i
puts numbers

問題2 2 つの整数の半角スペース区切りの入力 (paizaランク D 相当)

整数 a, b が半角スペース区切りで与えられるので、改行区切りにして 2 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a, b が 半角スペース区切りで与えられます。

a b

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a, b を 2 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a
b
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a, b は 1 以上 10,000 以下の整数
入力例1
8 13
出力例1
8
13

解答 半角スペース刻みで与えられる入力値を配列にして受け取り→[8, 13]putsで出力する

numbers = gets.split.map(&:to_i)
puts numbers

問題35 つの整数の半角スペース区切りの入力 (paizaランク D 相当)

整数 a_1, a_2, a_3, a_4, a_5 が半角スペース区切りで与えられるので、改行区切りにして 5 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a_1, a_2, a_3, a_4, a_5 が 半角スペース区切りで与えられます。

a_1 a_2 a_3 a_4 a_5

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a_1, a_2, a_3, a_4, a_5 を 5 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a_1
a_2
a_3
a_4
a_5
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a_1, a_2, a_3, a_4, a_5 は 1 以上 10,000 以下の整数
入力例1
2 0 8 1 3
出力例1
2
0
8
1
3

解答 半角スペース刻みで与えられる入力値を配列にして受け取り→[2, 0, 8, 1, 3]putsで出力する

numbers = gets.split.map(&:to_i) 
puts numbers

paizaLvアップ問題と解答(標準入力7)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題4 100 行の整数の入力 (paizaランク D 相当)

整数 a_1, a_2, … , a_99, a_100 が 100 行で与えられるので a_1, a_2, … , a_99, a_100 を 100 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a_1, a_2, … , a_99, a_100 が 100 行で与えられます。

a_1
a_2
...
a_99
a_100

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a_1, a_2, … , a_99, a_100 を 100 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a_1
a_2
...
a_99
a_100
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a_1, a_2, ... , a_99, a_100 は 1 以上 10,000 以下の整数
入力例1
4090
4199
9064
6517
9620
4155
5688
8290
819
8733
4409
556
6223
6231
6625
6413
2680
3673
7074
1685
1173
5231
79
1563
111
2777
258
1499
2293
8928
8159
939
4871
4535
5801
6821
6424
9405
5510
2836
9544
3251
5292
6832
7779
6457
87
5800
8807
6286
4921
5469
8405
8971
2315
4291
6946
991
4564
5922
8021
5101
8390
7023
7458
9225
8617
92
4249
4640
1314
2197
605
7658
7667
5680
9998
3050
5911
2892
9780
5342
692
6618
5590
2901
2113
1667
7247
8755
150
6878
9835
554
9970
7940
452
7535
9976
4574
出力例1
4090
4199
9064
6517
9620
4155
5688
8290
819
8733
4409
556
6223
6231
6625
6413
2680
3673
7074
1685
1173
5231
79
1563
111
2777
258
1499
2293
8928
8159
939
4871
4535
5801
6821
6424
9405
5510
2836
9544
3251
5292
6832
7779
6457
87
5800
8807
6286
4921
5469
8405
8971
2315
4291
6946
991
4564
5922
8021
5101
8390
7023
7458
9225
8617
92
4249
4640
1314
2197
605
7658
7667
5680
9998
3050
5911
2892
9780
5342
692
6618
5590
2901
2113
1667
7247
8755
150
6878
9835
554
9970
7940
452
7535
9976
4574

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入

numbers = readlines.map(&:to_i)
puts numbers

問題5 1,000行の整数の入力

整数 a_1, a_2, … , a_999, a_1000 が 1,000 行で与えられるので a_1, a_2, … , a_999, a_1000 を 1,000 行で出力してください。

期待する出力

a_1, a_2, … , a_999, a_1000 を 1,000 行で出力してください。

入力例  (・・・で途中省略しています。)

1189
8004
7243
.
.
.

5095

期待する出力(・・・で途中省略しています。)

1189
8004
7243
.
.
.

5095

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入

numbers = readlines.map(&:to_i)
puts numbers

FINAL問題  1,000個の整数の半角スペース区切りの入力

整数 a_1, a_2, … , a_999, a_1000 が半角スペース区切りで与えられるので、改行区切りにして 1000 行で出力してください。

期待する出力

a_1, a_2, … , a_999, a_1000 を 1000 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

入力例

5294 3387 953 7129 ・・・ 4344

期待する出力

5294 3387 953 7129 ・・・ 4344

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入

numbers = readlines.map(&:to_i)
puts numbers

paizaLvアップ問題と解答(標準入力6)Ruby

※スキルチェック問題ではありません。
規約により公式の解答コードそのままはよろしくないので、
オリジナルのコードにしています。

詳しくはコチラ

なるべくわかりやすい解説を付けました。

問題1 1 行の整数の入力 (paizaランク D 相当)

整数 a が 1 行で与えられるので a を 1 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a が 1 行で与えられます。

a

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a を 1 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a は 1 以上 10,000 以下の整数

入力例1
813
出力例1
813

解答 gets.to_iで入力値(数値)を受け取り変数に代入

numbers = gets.to_i
puts numbers

問題2 2 行の整数の入力 (paizaランク D 相当)

整数 a, b が 2 行で与えられるので a, b を 2 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a, b が 2 行で与えられます。

a
b

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a と b を 1 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a
b
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a, b は 1 以上 10,000 以下の整数

入力例1
81
3
出力例1
81
3

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入

numbers = readlines.map(&:to_i)
puts numbers

問題3 5 行の整数の入力 (paizaランク D 相当)

整数 a_1, a_2, a_3, a_4, a_5 が 5 行で与えられるので a_1, a_2, a_3, a_4, a_5 を 5 行で出力してください。

入力される値
以下の形式で標準入力によって与えられます。
整数 a_1, a_2, a_3, a_4, a_5 が 5 行で与えられます。

a_1
a_2
a_3
a_4
a_5

入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。

期待する出力
a_1, a_2, a_3, a_4, a_5 を 5 行で出力してください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。

a_1
a_2
a_3
a_4
a_5
条件
すべてのテストケースにおいて、以下の条件をみたします。

・a_1, a_2, a_3, a_4, a_5 は 1 以上 10,000 以下の整数
入力例1
1
2
3
4
5
出力例1
1
2
3
4
5

解答 readlines.map(&:to_i)で複数行の入力値(数値)を受け取り変数に代入

numbers = readlines.map(&:to_i)
puts numbers