FactorでLLのHole2
をなんとか解いてみた。
: mytitle dup 1 head >upper swap dup 1 tail swap drop append ; " " split [ mytitle ] map [ " " append ] map "" [ append ] accumulate drop dup length 1 - head まとめてしまって " " split [ dup 1 head >upper swap dup 1 tail swap drop append ] map [ " " append ] map "" [ append ] accumulate drop dup length 1 - head
長いとかは聞かないwww
一応自分用にメモ
mytitle wordは、先頭の一文字を大文字にするwordで、headで1文字切り出してupper、それとtailをappendしている。
その下の奴は、まずsplitによって全体を空白区切りにする。(文字列から部分文字列で構成された配列)
その後でmap mytitle seqとかして全部の単語の頭文字を大文字にする。
配列を文字列にする方法が分からなかったので、まず各々の単語のけつに" "(whitespace)を足した。
でそれらをaccumulateするわけだけど、そんな事したら最後に変なwhitespaceがついているので、それを省いた部分(headで達成している)を最終的に出力する様にした。
疲れた。
Factorとか今日お勉強用に初めてコード書いたあたりから記事書き初めて4時間だけどどうとでもなるな。
まぁもっともっと上手い方法がVocabularyを見ればありそうな気がするけど・・・。取りあえず今はここまで。