先日は過去問をやったが,ちょうど練習回があったので参加して見た.
これは,本番形式で過去問を解く,というものらしい.
出典は,
本番だと,入力をダウンロードしてから所定の時間内に解答を提出する必要がある. ソースコードも,提出する.
A
大きい方から小さい方を引く.
B
累積和で解くのだと思って書いて見たが,largeは通らず.
結局,トップの人のを見たところ,
というふうにすると解けるらしい. 考え方としては,下図のようだ.
C,Dは時間切れ.
先日は過去問をやったが,ちょうど練習回があったので参加して見た.
これは,本番形式で過去問を解く,というものらしい.
出典は,
本番だと,入力をダウンロードしてから所定の時間内に解答を提出する必要がある. ソースコードも,提出する.
大きい方から小さい方を引く.
累積和で解くのだと思って書いて見たが,largeは通らず.
結局,トップの人のを見たところ,
というふうにすると解けるらしい. 考え方としては,下図のようだ.
C,Dは時間切れ.
Google Code Jam の学生を対象としたやつ? 就職につながる感じなんだろうか.
年中いつでも登録できて,数か月おきにコンテストが開催されるらしい.
とりあえず,過去問を解いてみた
ちなみに,AtCoder などのようにソースコードを提出するのではなく,解答を提出する.
Dashboard - Kickstart Round B 2017 - Google Code Jam
例題を試していたら組合せ数に法則性が見えてきて,
になりそうだったので,それで提出.
large は,素朴に書くと Ruby だと時間がかかって答えが出なさそうだったので,C++に変更. なお,解答を提出するので時間がかかっても答えが出ればよい.
C++ だと最初負の数が出てきて,どうやらオーバーフローしているみたいだと気づき,適宜 109+7 で割った余りを使うように変更.
A,Bは解けた
Cは,なんで通らなかったか解明できていないけど,解説放送見て書いたら通った. 最初は色数の上限が8だと思ってたけど,違うらしい. 質問タブで複数人質問している人がいて,見ればよかった.
Dは有名問題らしい.
ARC #075 E より
Index が微妙にずれる気がする…
class BIT attr_reader :bit def initialize(n) @n = n @bit = Array.new(@n + 1, 0) end def sum(i) s = 0 while i > 0 s += @bit[i] i -= i & -i end return s end def add(i, x) i += 1 while i <= @n @bit[i] += x i += i & -i end end end
Newbie まで落ちました.
Creators Update 以来,VSCode のIntegrated Terminalで dirとかすると表示が崩れる問題があって,「従来のコンソールを使う」ことでしのいでいた.
で,この Issue をずっとウォッチしていたのだけど,
Windows Update の KB4020102 で修正されたらしく,確認してみると確かに治っていた.