Programming

python, json, unicode

なんでうまくいったのかよくわからないけど、unicodeでいろいろ書いてあるjsonファイルを読み込んでまた書き込みたいときの処理。 import json, codecs ## 読み込み fin = codecs.open(fin_name,'r','utf-8') jdata = json.load(fin) fin.close() ## jdata …

scikit-learn の RandomForest

肝心な部分だけ from sklearn.ensemble import RandomForestClassifier # n_estimatorsはtreeの数, random_stateはseed model = RandomForestClassifier(n_estimators=10, random_state=17) # がくしう model.fit(train_data, train_label) # 出来上がったtr…

JavaScriptのclosureについて

・関数,クロージャ,オブジェクトなどの細かい実装差分 手元ではnode.js v0.10.32で出力させて確認。 /* sample1 ただの関数 */ console.log("---sample1---"); function init1() { var num = 0; function disp() { num++; console.log(num); } disp(); } ini…

プログラミング雑記:ABC017C

・ABC017C+のいもす法(30+70+1) http://abc017.contest.atcoder.jp/submissions/349221 いもす法じゃない法(30+70) http://abc017.contest.atcoder.jp/submissions/349090 という感じで、単純な例では「一次元の重みつき部分区間の集合を扱う」ときに使う。 …

プログラミング雑記

・降順のソート(vector) sort(v.begin(), v.end(), greater<int>()); か sort(v.begin(), v.end()); reverse(v.begin(), v.end()); でよろしい。・ビット演算を使って全ての組み合わせを出力する ABC018Dのコードを漁っていたら知った。たとえば__builtin_popcoun</int>…

クリップボードとか

・計算量の圧縮について 愚直に計算したら到底終わらないような問題の計算量の次元をどうやったら落とすことができるか。ここまで数問としか呼べない程度の問題しか解いたことのない経験での雑感では、「便利なデータ構造を使って探索の次元を落とす」「アル…

プログラミング雑記

・whileとデクリメントでfor文の代用をするかしないか for (int i = 0; i < n; i++) {...} を while(n--) {...} と書くのは格好良い(もちろん使うのは回数だけ欲しいときだけね)。ただしデクリメントとwhileの判定の仕様に気をつけようねという話。具体的…

プログラミング雑記:ARC034、あとJavaとか

・ARC034Cだった ARC034C:http://arc034.contest.atcoder.jp/submissions/342262 解説:http://www.slideshare.net/chokudai/arc034 素因数分解して約数の総数を出しましょうよという問題。そもそも解答が正確に考えられてなかったので時間内には解けませんで…

プログラミング雑記:dwango2015

・じぶんが書いたやつ Atcoder上に提出した自分のコードがたどれないっぽいので、あとで見返せるようにリンクをまとめておく必要がある気がする。 dwango2015A:http://dwango2015-prelims.contest.atcoder.jp/submissions/322837 dwango2015B:http://dwango2…

プログラミング雑記

コーディングのテクニック的なものをメモする必要がある。箇条書きでいいか。ちなみに、「雑記」などのカテゴリー分類は基本的にサイト内検索に引っ掛かるようにして済ませるつもりなので、プログラミングの技術については(日記の内容が混ざらないように)p…

競技プログラミング雑記

AtCoderが日本語だし……と競技プログラミングに初めて手を出して試しに問題を解いてみたのだけど、(簡単な問題は解けるのはいいとして)提出されているコードに「これ使えたら便利だなぁ」と思うものがあったのでメモ。ありがとうございます。これから解いて…

OCamlのfunctor

OCamlのfunctorがよくわからなかったので調べて理解した限りのことを書く。間違ってたらすみません。・declaration of structure module Module_name = struct (* implement *) end ・declaration of signature module type SIGNATURE_NAME = sig (* declare…

OCamlの二進数表現っぽいもの

ocamlで二進表現の型定義どうするのってぐぐってもそれらしい解説がついてるのが見つからなかったんだけど、やっぱり考えぬいて(アニメ見ながら3時間くらい考えた)以下の結論に至った。 type bnats = X | Y of bnats | Z of bnats type bnat = A | B of bn…

OCamlのコンストラクタ

OCamlのコンストラクタがよくわからない。オブジェクト指向言語ばかりやってた私にとっては(と言ってもC#とかVB.NETだけど)コンストラクタというのはクラスからインスタンスを作るときに呼び出されるメソッドのことなんだけど、関数型のこの子にとっては違…