読者です 読者をやめる 読者になる 読者になる

kei0425tan’s blog

技術的なことを主に

paizaをswiftでやったら泣きそうになった話 D062:ひな祭り

といわけで、swiftをやってみたのですが、やばいですね。

とりあえず練習なので、paizaのD062:ひな祭りをやってみました。

paiza.jp

環境構築は面倒なので、いつものようにこちらを使います。
Web-based online coding environment | paiza.IO

どうせググれば何とかなるだろうと思いつつ、何もわからないまま挑戦。
これは、まず標準入力をsplitして、、、、、
ってここから躓きました。

paizaのswiftはバージョン3なのですが、ウェブの情報では、2と3が混在しており、全然違う方法が見つかります。

結論としては、以下で、スペースで区切って、ついでに数値化します。

import Foundation

let input_line: String = readLine()!
var arr = input_line.components(separatedBy: " ").map{Int($0)!}

import Foundationをしないと、componentsが使えないそうです。

そのあと、文字列をsubstringすれば完成だなと思ったのですが、こちらも大変でした。

引数がindexなのですが、なぜか数字で指定できません。
swiftにはindex型とういうのがあるらしく、それで指定する必要がありました。

なので、普通に数字で指定できるjavascript互換のsubstring,substrを作成してみました。

javascriptでは、こういう拡張を勝手にするのは悪手になっていますが、swiftではどうなんでしょう??
多分、使わないほうがよいかと思います。