自分用メモ

プログラミングとかのメモを書きたいです

2021-10-01から1ヶ月間の記事一覧

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/31 結果:解けた 時間:15分 考えたこと 1周して戻るときは、modをとって計算 しゃくとり法の感じで、現在が求めたい面積より多いときは縮める、少ないときは伸ばすをしていき、見つかるかどうかを行えば良い 公式…

競プロ典型 90 問:075 - Magic For Balls(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/31 結果:解けた 時間:5分 考えたこと まずは素因数分解する。いちばん効率が良いのは、 の を一番効率よく分割するのは、との素因数の数が同じになるようにすること。 素因数分解はいぜんにライブラリ化してある…

WSL2のGUIアプリ

Windows10でこのURLに書いてあるようなことをやった。 astherier.com WSLg というのもやってみたかったけど、Insider PreviewやWin11を使うのもまだ早いと思ってやめておいた。 Xサーバをインストール VcXsrv 設定として、Display numberを明示的に0にするこ…

WSL2のIPアドレス

WSLのIPアドレス Windowsからみたlocalhostではなく、別のIPアドレスが使われている。 それは毎回変わるらしい。 WSLのIPアドレスの確認方法 (1)WSL内から確認:ごちゃごちゃしてる ip addr (2)WSL内から確認:こっちのほうがシンプル hostname -I (3)Window…

WSL2のUbuntuでDocker環境を動かす

やったこと Windows10のWSL2でdockerを使えるようにした 参考にしたサイトの手順をやっただけ 参考にした手順 zenn.dev メモ 公式サイトの手順にたいして次の設定追加をしている感じ。 wsl起動時にdocker daemonが起動する用にする(.bashrc で service docke…

競プロ典型 90 問:072 - Loop Railway Plan(★4)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/30 結果:解けた 時間:45分ぐらい 考えたこと 効率的な解法は特に思いつかないし、制約が小さいので全探索か? 再帰で全ルートを求める 公式解説 https://twitter.com/e869120/status/1407109731546636289/photo/…

競プロ典型 90 問:070 - Plant Planning(★4)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_br 挑戦結果 挑戦日:2021/10/29 結果:解けた 時間:10分 考えたこと X方向とY方向は独立して考えてOK。 発電所の左右にある工場数が同じあれば効率が良い。 工場の座標をソートして、中央にあ…

競プロ典型 90 問:069 - Colorful Blocks 2(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/29 結果:解けた 時間:15分 考えたこと 1ブロック目:Kパターン、 2ブロック目:K-1パターン、 3ブロック目以降:K-2パターン なので、これをかければ良い。modを取れば大きな数字ならないので、速度面も問題ない…

競プロ典型 90 問:067 - Base 8 to 9(★2)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/28 結果:解けた 時間:20分 考えたこと 再現するだけ。 いったん10進法に戻して計算する。 コーナーケース(0のとき)で、WAを出した 実装はちょっと汚い気がした。 公式解説 https://twitter.com/e869120/status/1…

競プロ典型 90 問:064 - Uplift(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/27 結果:解けた 時間:1時間ぐらい 考えたこと 各区画の標高を持つのはTLE。 各クエリ時点での不便さを更新していくようなアルゴリズムでないと、計算量的に間に合わなそう 左隣の標高との差を保持するのが良いか…

063 - Monochromatic Subgrid(★4)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/26 結果:解けた 時間: 1時間ぐらい 考えたこと DPとかを使うのかと思ったけど、 愚直にやればできそうな気がした。 8行分のどれを使うかは全パターン列挙しても256通り。 選択した行について、列が同じ数字にな…

競プロ典型 90 問:061 - Deck(★2)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/26 結果:解けた 時間:5分 考えたこと listだと先頭に入れるのが遅いのでダメ。 dequeを使えば実装するだけ。 公式解説 https://twitter.com/e869120/status/1402395219287371779 解説を読んだふりかえり deque …

競プロ典型 90 問:058 - Original Calculator(★4)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/25 結果:解けた (でも、2,3問WAが出てデバッグに苦労した) 時間:1時間ぐらい 考えたこと ボタンAを押していく中で、過去に登場した数値が出てきたらあとは同じ。周期性を使って計算すれば良さそう。 公式解説 ht…

競プロ典型 90 問:055 - Select 5(★2)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/21 結果:解けなかった(TLE) 時間:30分 考えたこと コンビネーションで全列挙は簡単にかけるけど、 ぐらいになって、TLEしそう。 でも高速な解法は思いつかないので、全列挙してみよう。TLEした。 解けなかった。…

競プロ典型 90 問:052 - Dice Product(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/21 結果:解けた 時間:15分 考えたこと サイコロ2個の事例で計算してみていると、各サイコロの和をとって、それを掛けていけばOKと気がついた 公式解説 https://twitter.com/e869120/status/1398409831044632576…

競プロ典型 90 問:050 - Stair Jump(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/17 結果:解けた 時間:10分 考えたこと いかにもDP DP[n]をn段目にたどり着く方法とおいて、DP[n] から DP[n+1]とDP[n+L]に配ればOK。 最初、1段~L段上にすすめると勘違いしていたけど、そうではなくて1段orL段…

競プロ典型 90 問:048 - I will not drop out(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/17 結果:解けた 時間:20分ぐらい 考えたこと 各秒で貪欲に点数が一番多い問題(部分点 or 満点狙い)に取り組むのが良い。それを上手に実装すればよさそう。 部分点は最初にソートしておいて、上から順に取り出し…

競プロ典型 90 問:https://atcoder.jp/contests/typical90/tasks/typical90_at

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/17 結果:解けた 時間:10分 考えたこと 愚直に全パターンやると、 なのでTLE。 46の倍数だけを考えるので、mod 46だけを考えれば良さそう。 たとえば、Aが[0,1,2,46, 92]とかだったら、0が3個、1が1個、2が1個の…

競プロ典型 90 問:044 - Shift and Swapping(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/17 結果:解けた 時間:10分 考えたこと T1とT3はやるだけ。 T2は右シフトを愚直に実装するとTLEしそう。 なので、シフトに、クエリ数がだとでまずそう。 シフトの代わりに基準にする場所を持っておいて、T2のとき…

競プロ典型 90 問:043 - Maze Challenge with Lack of Sleep(★4)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/17 結果:解けなかった 時間:1時間ぐらい 考えたこと 方向を変えた数なので、単純な最短経路ではなさそう。 といっても、QueueをもってBFSをやって、方向転換した数が少ないものから展開していけば良さそう なに…

競プロ典型 90 問:042 - Multiple of 9(★4)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/15 結果:解けなかった 時間:30分 考えたこと DPっぽい 一文字足して行く感じ 公式解説 https://twitter.com/e869120/status/1394423616805097477 解説を読んだふりかえり メモ化再帰で書いてみた 個人的にDPより…

競プロ典型90問:038 - Large LCM(★3)

問題 atcoder.jp 挑戦結果 挑戦日:2021/10/14 結果:解けた 時間:3分 考えたこと pythonに最大公約数のライブラリは入っていて、そこから最小公倍数も求められる。 最小公倍数のスニペットも以前作ったことあった気がするから、発掘。 公式解説 https://tw…

競プロ典型90問:034 - There are few types of elements(★4)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_ah 挑戦結果 挑戦日:2021/10/08 結果:解けた 時間:30分ぐらい 考えたこと しゃくとり法のように構成すれば良さそう 現在見ている左部分(l)と右部分(r)の座標を保持する。 登場した数字の個数…

競プロ典型90問:033 - Not Too Bright(★2)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_ag 挑戦結果 挑戦日:2021/10/08 結果:解けなかった 時間:20分 考えたこと 左上原点としたら、各2x2のマスの左上を点灯させるだけ 1行分を考えると$(W+1)//2$、1列分を考えると、$(H+1)//2$ …

競プロ典型90問:032 - AtCoder Ekiden(★3)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_af 挑戦結果 挑戦日:2021/10/07 結果:解けた 時間:20分ぐらい 考えたこと 全探索できそう。$10! = 3.6 * 106$ 順番の全列挙はpythonのライブラリにあったはず 公式解説 https://twitter.com/…

競プロ典型90問:028 - Cluttered Paper(★4)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_ab 挑戦結果 挑戦日:2021/10/07 結果:解けた 時間:30分ぐらい 考えたこと いもす法というやつで解けるのでは? はっきりとおぼえていなかったけど、縦と横で累積和を取るはず 公式解説 https…

競プロ典型90問:027 - Sign Up Requests (★2)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_aa 挑戦結果 挑戦日:2021/10/07 結果:解けた 時間:3分 考えたこと setに入れて、チェックするだけ 公式解説 https://twitter.com/e869120/status/1387901052683386880 解説を読んだふりかえ…

競プロ典型90問:026 - Independent Set on a Tree(★4)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_z 挑戦結果 挑戦日:2021/10/07 結果:解けた 時間:30分ぐらい 考えたこと 木なのでどこかのノードから距離を求めてしまえば求まりそう 距離0,2,4,6,・・・のノードは接続していない。 距離1,3…

競プロ典型90問:024 - Select +/- One(★2)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_x 挑戦結果 挑戦日:2021/10/06 結果:解けた 時間:5分 考えたこと 基本的に愚直に計算すれば良いと思った。 操作を行う数は、A[i]とB[i]の差 これがK未満であればOKだけど、余ったら+/-を繰り…

競プロ典型90問:022 - Cubic Cake(★2)

問題 https://atcoder.jp/contests/typical90/tasks/typical90_v 挑戦結果 挑戦日:2021/10/06 結果:解けた 時間:30分ぐらい 考えたこと 一番小さい辺の長さで直方体を作る これが間違っていて、WAを出した 3辺の最小公倍数にカットすればよさそう 公式解…