人工知能と競プロやってくブログ

深層学習・機械学習・AI・atcoder・競技プログラミングについて調べてやってみたことをまとめるブログです

bit全探索

AtCoder Beginner Contest 167 [ C - Skill Up ]をPythonで解く(300点、🟫茶diff)

問題 atcoder.jp 解法 Pythonのitertools.combinationsで、取りうる全組み合わせの総当たりを生成。 全探索をかけるコードを書いてAC。 実行結果は Python(3.8.2) AC 89ms PyPy3(7.3.0) AC 79ms と、充分速い。 想定解は、制約がN <= 12 と低いことを利用し…

AtCoder Beginner Contest 173 [ C - H and V ]をPythonで解く。bit全探索問題(300点、茶diff🟫)

atcoder.jp 解法 問題文より 行を何行か選び (0行でもよい)、列を何列か選ぶ (0列でもよい)なので、選ぶ行は何行でも自由に選択できる。 1 <= H, W <= 6 なので、最大でも212 = 4096通り。 bit全探索で総当たりをかけて、答えを求める。 実装 参考 blog.hama…

AtCoder Beginner Contest 182 [ C - To 3 ]をPythonで解く。公式解説が最後の1行でどんでん返しアリ?(300点🟫茶diff)

問題概要 atcoder.jp 解法 公式解説には、3の倍数に関する色々な考察が書いてある。 数十行にわたって難しそうなことが延々かいてあるのだが、最後の1行で驚きのどんでん返し。 Nが18桁しかないので消す桁を2進数を使って全探索でも解けます えー!それな…