paizaで遊んでいるという話

特に転職したいというわけではないが、最近あまりコードを書いていなかったのとキッカケがありpaizaの問題を解いている。

大抵の問題はレベルによって様々だが一番簡単なもので数分、難しいものでも2時間程度で解けるようなものが多い。 Swiftで解いていたが、Swiftに飽きてきたので他の言語でもやってみようと思う。この記事では、Swiftでよく使った関数と他の言語の対応表を作って素早く問題が解けるようにしたい。

Swift Ruby
入力 readLine() gets
出力 print() puts
0からn未満までのRange 0..<n 0...n
String→Int Int(s) s.to_i
Int→String String(i) i.to_s
Number format import Foundation*1
String(format: "%04d", 12)
format("%04d", 12)*2
map .map {(s) in s} .map {|s| s}
each .forEach{(s) in print(s)} .each {|s| in puts s}
filter .filter {(i) in i % 2} .select {|i| in i % 2}
reduce .reduce(0) {(r, i) in r + i} .inject(0) {|r, i| in r + i}
split .split(separator: " ") .split(" ")
join joined(separator: " ") join(" ")

*1:ないとエラーになる

*2:"%04d" % 12という書き方もある