コッコ

Deep Learning

Kerasのmodel.summary()をloggingする

Pythonのloggingを使ってきた時、kerasのmode.summary()をログに保存したくなった。 しかし、そのままloggerの引数に与えてもNoneが帰ってきてログに記録されなかった。 import logging logg...
Deep Learning

Tensorflowで DeBERTaを使おうとしたらTokenizer class DebertaV2Tokenizer does not exist or is not currently imported

HuggingfaceからDeBERTaを使おうとしたら表題のエラー。 ValueError:Tokenizer class DebertaV2Tokenizer does not exist or is not currently imp...
LeetCode

1155. Number of Dice Rolls With Target Sum

k面のサイコロをn個振った時、合計値がtargetになる組み合わせの数を求める問題。 全探索する場合、1~kのどれが出るかという試行がn回繰り返され、O(K^N)となり間に合わない。 ここで、サイコロの出目を1つずつ足していくことを考える。...
LeetCode

貪欲法とDPで 1029. Two City Scheduling

問題はこちら。 2N人をA,Bの2つのグループ分け、均等に振り分けるために必要なコストを最小化する問題。 Aに振り分けるコスト、Bに振り分けるコストが与えられる。 貪欲法 Aに行きやすい人はAに行かせ、Bに行きやすい人はBに行かせれば良い。...
AtCoder

AtCoder Beginner Contest 240の感想

リアルタイムで参加しました。 A - Edge Checker 線で結ばれていれば隣り合っているはずなので、差が1になる組み合わせが答え。 そのまま差を取ると両端の場合がコーナーケースになるので、場合分けを追加。 a, b = map(in...
AtCoder

再帰を使わないオイラーツアーをスタックで実装する思考過程

AtCoderをしていた時、解法でオイラーツアーという単語が出てきた。 初めて聞いた単語だったため、以下のサイトを参考に実装して思考過程を整理してみた。 深さ優先探索(DFS)を行い、訪れた頂点の順番と時刻を記録するアルゴリズム。 オイラー...
AtCoder

AtCoder Beginner Contest 237の感想

A - Not Overflow PythonのintはC++のlong longと違って上限がないので、そのまま実装。 n = int(input()) if -2 ** 31 <= n < 2 ** 31: print('Yes') e...
AtCoder

AtCoder Beginner Contest 238の感想

A - Exponential or Quadratic 問題文そのまま実装。 n = int(input()) ans = 2 ** n > n ** 2 print('Yes' if ans else 'No') B - Pizza 手...
LeetCode

二分木の通りがけ順をMorris traversalで解く

二分木の値を通りがけ順に出力する問題。 再帰を使った深さ優先探索で解ける。 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0,...
Python

pythonのdataclassでkey, value, lenを使う

データの格納だけをしたい時、辞書を作成するよりもdataclassでデコレートする方が宣言が楽で便利。 __init__()を書いてインスタンス変数に代入、という作業をしなくて済むので見た目もスッキリする。 import dataclass...