くじらにっき++スマートフォン用の表示で見るくじらにっき++2012-09-30競技プログラミング用Python最速マスターPythonLLを使ってプログラミングするときに普段はRubyを使っているのですが,いろいろあってPythonも使い始めました。何問かAOJでも提出してみたので、手元のメモ書きをリファレンス的に残しておこうと思います。2系ではprint文です。good!)デバッグなどでオブジェクトの中身を表示したいときは,repr()関数を使って文字列化したものをprintするスコープ割とややこしい。ついては,Rubyの説明ですが以下のページがおすすめです。qiita.comその他データ構造setset関数にコレクションを渡してやると、集合を表すコレクションを作ることができます。演算子が定義されているので、困ることはないでしょう。文字列によって構成されるタプル」などの不変オブジェクトのみ。メソッドで取得できる。メソッドか、in演算子で判定する。v存在しない要素にアクセスするC++でワードカウントのような操作を行うときに、次のようなコードを書いている人も多いと思います。(おすすめだけど、存在をよく忘れる)Counterクラスは、デフォルトのvalueが0のディクショナリです。使うリファレンスへのリンクdefaultdictはdictのサブクラスで、存在しないkeyの値を読もうとしたり書き換えたりしようとした時に、コンストラクタとして与えた関数や無名関数を呼び出して、その返り値をデフォルト値とします。前者を使うことにします。追記queueモジュールのコレクションは、本来はマルチスレッドでのプログラミングのために用意されたものだと書いてあったので、シングルスレッド環境でベンチマークを取ってみました。その結果、collections.dequeやheapqと比べてかなり重い事がわかりました(ロックと解放に時間がかかっているんでしょう)。LifoQueueについては5倍ほどの差が出ました。競技プログラミングにおいては、queueモジュールを選択するメリットが少ないように思われます。高速化のために...arrayリストに整数を入れたときは、1要素あたり16バイト(!)確保されるので、たまにMLEすることがあります。いうときは、省メモリなarrayモジュールが使えます。必須とも言えるいくつかのメソッドが定義されていません。5])1番目の引数には、格納する型を表す文字列を渡す必要があります。詳細はこちらで確認して下さい。良いんじゃないかなー。なることも覚えておけば、困ることは無いかと。ジェネレータ式リストを引数に取る系の関数は、リストの実態の代わりに、ジェネレータ式というものを渡すことができます。)countifリストlの中でnより大きい要素の個数を数える時ダサい方法ですが、これが一番省メモリでした。(1)はてなブログをはじめよう!kujira16さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。