パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

OCaml 絶望から立ち上がる

2021-11-08 | ML系言語に挑む

昨日から問題は解けず。スプラ2三昧

ふと最初の勤めた会社の社長にいただいた「心に革命を起こせ」をパラパラとみる。

OCamlは無理だと絶望しつつあった日曜の22:30

 

タイマーを2時間に設定して挑戦してみる。

mapを使おうとしているがどうにもうまく使えない30分は空虚に時が過ぎ

hashtblのサンプルを見つける。これで少し進める。

作成後、取得できない場合、例外対応も必要と新たな難題が

幸い有無チェックがあったのでそちらで対応

 

後は拡張子の取得。拡張子以外の取得は見つける。

そのモジュールのFilenameにあるのではと調べてextentionを見つける。

1時間半で解ける。

 

 

そして昨日絶望に落としてくれた問題に挑む。

float_of_stringができないと散々はまったあげく、元データの小数点がカンマになっていて

置換処理をしようとして"str.cma"が読み込めずに断念した問題

いろいろと試したあげく、CodinGameではこれを使いたいという要望をみかけてダメだと知る。

 

他にもデータをスプリットしたりと調べても情報が得られない。

仕方がないので意味のわかりにくいモジュールを読み出す。

するとサッパリわからなかったものが少しわかるようになってくる。

少数点の独特の計算式は去年はまったので思っていたよりかんたんにクリア。

 

ついに昨日絶望に叩き落としてくれた問題を攻略する。

 

CodinGameの問題を1つの言語で15問解くとLegendの称号が増える。

あと一問まで来たのでもう一問解いてみる。

ダイスの目を入れ替えるのに文字列から一文字ずつ取り出す必要があるのだけどこれがChar型になってしまう。

これを戻す方法を調べなければならない。

 

モジュールのCharを調べて該当するものをみつける。とうとうモジュールの見かたがわかってきた。

13 15行ではString.makeを使っていたけどChar.escapeの方が使いやすい。

やっと思った形に作れるようになってきました。

 

夜明けはもうすぐ。


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。