金魚亭日常

読書,ガジェット,競技プログラミング

Google Code Jam Kickstart 2017 Practice Round 2

先日は過去問をやったが,ちょうど練習回があったので参加して見た.

これは,本番形式で過去問を解く,というものらしい.

出典は,

本番だと,入力をダウンロードしてから所定の時間内に解答を提出する必要がある. ソースコードも,提出する.

A

大きい方から小さい方を引く.

B

累積和で解くのだと思って書いて見たが,largeは通らず.

結局,トップの人のを見たところ,

というふうにすると解けるらしい. 考え方としては,下図のようだ.

f:id:what_alnk:20170612233223p:plain

C,Dは時間切れ.

Google Code Jam Kickstart 2017 Round B

Google Code Jam の学生を対象としたやつ? 就職につながる感じなんだろうか.

年中いつでも登録できて,数か月おきにコンテストが開催されるらしい.

とりあえず,過去問を解いてみた

ちなみに,AtCoder などのようにソースコードを提出するのではなく,解答を提出する.

A. Math Encoder

Dashboard - Kickstart Round B 2017 - Google Code Jam

例題を試していたら組合せ数に法則性が見えてきて,

  • ある(最小値,最大値)の組をとる部分数列の個数は,2の累乗

になりそうだったので,それで提出.

large は,素朴に書くと Ruby だと時間がかかって答えが出なさそうだったので,C++に変更. なお,解答を提出するので時間がかかっても答えが出ればよい.

C++ だと最初負の数が出てきて,どうやらオーバーフローしているみたいだと気づき,適宜 109+7 で割った余りを使うように変更.

最終的に,Ruby の方もC++ の解答に合わせて書き直すと速くなった(最初は2の10000乗とか計算していた).

AtCoder ABC #064

A,Bは解けた

Cは,なんで通らなかったか解明できていないけど,解説放送見て書いたら通った. 最初は色数の上限が8だと思ってたけど,違うらしい. 質問タブで複数人質問している人がいて,見ればよかった.

Dは有名問題らしい.

AtCoder ABC #064

Binary Indexed Tree

ARC #075 E より

arc075.contest.atcoder.jp

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

AtCoder ARC #075 / ABC #063

2017年5月に読んだ本

期間 : 2017年05月
読了数 : 9 冊
3月のライオン昭和異聞 灼熱の時代 4 (ヤングアニマルコミックス)
西川秀明 / 白泉社 (2017-03-29)
読了日:2017年5月30日
3月のライオン昭和異聞 灼熱の時代 2 (ジェッツコミックス)
西川秀明 / 白泉社 (2016-03-29)
読了日:2017年5月30日
アルスラーン戦記(7) (講談社コミックス)
荒川 弘 / 講談社 (2017-05-09)
読了日:2017年5月14日
ダマシ×ダマシ (講談社ノベルス)
森 博嗣 / 講談社 (2017-05-08)
読了日:2017年5月5日
花物語 <物語> (講談社BOX)
西尾維新 / 講談社 (2011-03-29)
読了日:2017年5月4日
傾物語 <物語> (講談社BOX)
西尾維新 / 講談社 (2010-12-24)
読了日:2017年5月4日
めしにしましょう(2) (イブニングKC)
小林 銅蟲 / 講談社 (2017-02-23)
読了日:2017年5月3日
めしにしましょう(1) (イブニングKC)
小林 銅蟲 / 講談社 (2016-11-22)
読了日:2017年5月3日
ジョジョリオン volume 3―ジョジョの奇妙な冒険part8 その家系図 (ジャンプコミックス)
荒木 飛呂彦 / 集英社 (2012-09-19)
読了日:2017年5月2日

VSCode (Windows 10 Creators Update) の Terminal 表示くずれる問題

Creators Update 以来,VSCode のIntegrated Terminalで dirとかすると表示が崩れる問題があって,「従来のコンソールを使う」ことでしのいでいた.

で,この Issue をずっとウォッチしていたのだけど,

github.com

Windows Update の KB4020102 で修正されたらしく,確認してみると確かに治っていた.