【概要】
paizaで頻出で使用する技術や、基本的な考え方をまとめています。
ご指摘や別の方法などあればコメント欄でご指摘をお願いいたします。
【はじめに】
まず、paizaについてご説明します。
paizaラーニング とは?
paiza(パイザ)ラーニング は、動画を使ったオンラインのプログラミング入門学習コンテンツです。
プログラミング講座では、 Java、Python、Ruby、PHP、C言語、SQL、JavaScript、HTML+CSS などの講座を公開。1本約3分の動画とそれぞれのチャプターに対応した演習課題で効率よく学べます。
progateのようなオンラインで学習できるアプリになります。
本アプリの特徴として、「アルゴリズムに特化」した内容になっておりまして、プログラミングの思考をする上で重要な部分になります。
言語に関しては自分自身の使用できる言語で問題ありませんが、使用できる言語については、限られているのでご注意してください。
また、paizaを学習することでpaiza転職で利用できるということです。
こちらは、自分自身のスキルを可視化することで、転職時にジャッジできるようになります。
自分自身の市場の価値観を知る目的でもぜひ活用してもみましょう。詳細は下記になります。
【頻出使用方法】
ここからpaizaで使用する頻出のものをご紹介いたします。
【入力値を抽出する方法】
・値を1件抽出する方法
num = gets.chomp.to_i
puts num
# % ruby test.rb
#=> 1 入力値
#=> 1 出力値
・1回で複数件の値を抽出する方法
array = gets.chomp.split.map(&:to_i)
puts array
# % ruby test.rb
#=> 入力値 1 2 3 4 5 6 7 8 9
#=> 出力値1
#=> 出力値2
#=> 出力値3
#=> 出力値4
#=> 出力値5
#=> 出力値6
#=> 出力値7
#=> 出力値8
#=> 出力値9
2回で複数件の値を抽出する方法
num = gets.chomp.to_i
array = []
num.times do |i|
array << gets.chomp.split.map(&:to_i)
end
puts array
# % ruby test.rb
#=> 入力5(一回目の入力)
=======================================
#=> 入力0(二回目の入力1)
#=> 入力1(二回目の入力2)
#=> 入力2(二回目の入力3)
#=> 入力3(二回目の入力4)
#=> 入力4(二回目の入力5)
=======================================
#=> 出力0
#=> 出力1
#=> 出力2
#=> 出力3
#=> 出力4
【順番に配列を設定する方法】
word = ('a'..'z').to_a + ('A'..'Z').to_a
puts word.join(',')
# % ruby test.rb
#=> 出力結果 a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
【2次配列の操作(9*9表)】
x = 9
y = 9
result = []
y.times do |i|
row = []
x.times do |j|
row << (i + 1) * (j + 1)
end
result << row.join(' ')
end
puts result
# % ruby test.rb
#1 2 3 4 5 6 7 8 9
#2 4 6 8 10 12 14 16 18
#3 6 9 12 15 18 21 24 27
#4 8 12 16 20 24 28 32 36
#5 10 15 20 25 30 35 40 45
#6 12 18 24 30 36 42 48 54
#7 14 21 28 35 42 49 56 63
#8 16 24 32 40 48 56 64 72
#9 18 27 36 45 54 63 72 81
【おわりに】
いかがでしょうか?
ここまでアルゴリズムの内容をご紹介いたしました。
言語としてRubyにはなるのですが、他のオブジェクト指向言語にも横展開できるかと思います。
アルゴリズムの考え方は、基本情報や応用情報でも活かせる技術になりますので、ぜひたくさん触れてみてください。
【引用】