競プロ用チートシート – Python版

スポンサーリンク

競プロ用チートシートのPython版です。一般的な競技プログラミングで不要と思われる内容は割愛されています。例えば、クラスの詳細、モジュール、ファイル関係など。

テンプレート

テンプレート

 

文法

コメント・インデント
数値演算
スライス
range()
for文
while文
整数の入力
文字列の入力
出力
データ型
2/8/16進数
リスト
タプル

タプルは “変更できないリスト”(リストはmutable、タプルはimmutable)

辞書型(dict型)

集合(set型・frozenset型)

集合は要素の重複を許さず、要素の順番を保持しない。

内包表記

関数

lambda式

lambda式を使うと、1行で無名関数を作成できる。

クラスの基本

 

string

宣言と参照(工事中)
編集(工事中)
操作(工事中)
正規表現

 

リスト

基本(工事中)
リストの操作
比較関数を使ったソート
bisect(工事中)

C++ の upper_bouns()、lower_bound() みたいなことができます。

 

データ構造

pair(工事中)
stack と queue(工事中)

 

アルゴリズム

UnionFind(DSU)

ACLのUnionFindをPythonで書いた例

例題

bit全探索(工事中)
DFS(深さ優先探索) (工事中)
BFS(幅優先探索) (工事中)
ダイクストラ法(工事中)
DP(動的計画法)(工事中)

 

その他の関数

CPU時間の計測(工事中)
進数変換(工事中)
素数(工事中)
約数列挙(工事中)
最大公約数、最小公倍数(工事中)
素因数分解と、互いに素の個数(オイラーのφ関数)(工事中)

「aとbが互いに素」とは、「aとbの最大公約数が1」ということ。

等差級数(工事中)
組合せの数(工事中)
組合せで実行(工事中)
順列(工事中)
フィボナッチ数列とメモ化(工事中)

 

コメント

タイトルとURLをコピーしました