あるエンジニアのAtCoder奮闘記

東京都港区にあるアミフィアブル株式会社のエンジニアが、AtCoderで解いた問題について振り返ったりしていく会社公認のブログです。

B問題

AtCoder AGC 007 B - Construct Sequences (Go)

irisruneです。最近あまりAtCoderに時間を割けていません。 問題 atcoder.jp 3つ目までの条件を満たしつつ4つ目の条件を満たすためにはどうすればよいか考える問題です。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func …

AtCoder 第二回全国統一プログラミング王決定戦予選 B - Counting of Trees (再解説) (Go)

irisruneです。前回扱った問題のアルゴリズム面についてもう少し解説したいと思います。 問題リンクと提出コードは前回記事を参照してください。 ami-atcoder.hatenablog.com 例えば以下のような入力について考えます。 6 0 1 1 2 2 3 すると、次のような木…

AtCoder 第二回全国統一プログラミング王決定戦予選 B - Counting of Trees (Go)

irisruneです。例によってコンテストには出られませんでした。 問題 atcoder.jp アルゴリズムは素直ですが、解法のイメージができるかが問われる問題だと思います。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextS…

AtCoder AGC 019 B - Reverse and Compare (Go)

irisruneです。GoのLanguage Owner入りをのんびり目指していきたいです。 問題 atcoder.jp 除外して良いケースをどのように導き出すかという問題です。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextStr() string …

AtCoder AGC 032 B - Balanced Neighbors (Go)

irisruneです。気づけばもう11月となり、今年の終わりも近づいてきました。 問題 atcoder.jp パズル要素が強めのグラフ問題です。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextStr() string { sc.Scan() return s…

AtCoder AGC 039 B - Graph Partition (Go)

irisruneです。今週は台風の影響で公式コンテストが開催されないそうです。 問題 atcoder.jp どのような場合に条件を満たす分割が可能か、どのようにして分割の最大数を求めるかがポイントになります。 package main import ( "bufio" "fmt" "os" "strconv" …

AtCoder Mujin Programming Challenge 2017 B - Row to Column (Go)

irisruneです。1300点問題が解けたのは嬉しいです。 問題 atcoder.jp 得点が高いですが、アルゴリズムや実装の難しさよりも数学パズル寄りの問題だとは思います。 package main import ( "bufio" "fmt" "os" "sort" "strconv" ) var sc *bufio.Scanner func …

AtCoder AGC006 B - Median Pyramid Easy

irisruneです。ABC-F問題の壁は厚いですね。 問題 atcoder.jp 順列をどのように構築すればよいかがわかれば、順列が存在し得るかどうかも自然とわかります。あるいは小規模なケースで試してみるのもよさそうです。 package main import ( "bufio" "fmt" "os"…

AtCoder 第一回日本最強プログラマー学生選手権-予選- B - Kleene Inversion (Go)

irisruneです。随分Go言語にもお世話になっているので競プロ以外でも何かしら形にしてみたい気分です。 問題 atcoder.jp 制約条件に注目すると解き方が見えるかもしれません。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner …

AtCoder AGC 002 B - Box and Ball (Go)

irisruneです。久々の過去問回です。 問題 atcoder.jp 突き詰めればただシミュレートするだけの問題で、操作によってどのような挙動を示すのかを把握できれば解くことができると思います。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bu…

AtCoder ABC 133 B - Good Distance (Python)

irisruneです。しばらくコンテストは不参加が続きそうですが、今週はB~E問題まで扱う予定です。 問題 atcoder.jp 書いてあることを実装すれば解けますが、B問題にしては実装がやや重いです。 import sys import math import numpy as np def input(): retur…

AtCoder ABC 131 B - Bite Eating (Go)

irisruneです。ここ最近競技プログラミングに使う言語についてまた悩んでいるところです。 問題 atcoder.jp 実はD問題より解く時間がかかったので取り上げることにしました。絶対値の差ではなく差の絶対値なので誤読しないようにしましょう。 package main i…

AtCoder diverta 2019 Programming Contest 2 B - Picking Up (Python)

irisruneです。今週もコンテストは出ていませんでした、コンテスト開催日時に合わせて色々調整することも考えないといけませんね。 atcoder.jp C問題よりも難しいと感じる人もいたそうです。確かに問題文だけ見るとC問題の方が単純そうには見えました(まだC…

AtCoder AGC 034 B - ABC (Python)

irisruneです。当初Pythonで解けなくてGoで解いていたのですが、ミスに気付いたのでPythonで解き直しました。TLEしたときにすぐPythonのせいにするのはよくないですね。 atcoder.jp 600点としてはかなり簡単な方で、少なくとも土曜日の企業コン500点問題より…

AtCoder ARC 042 B - アリの高橋くん をテーマに弊社エンジニアで対談会

irisruneです。ようやく対談会を記事にまとめることができました。 コードがなかったりいつもとスタイルが違いますが、お付き合いいただければと思います。 問題 atcoder.jp 登場人物紹介 筆者I:irisrune エンジニアA:AtCoderはやったことはないが周りにやっ…

AtCoder ABC 128 B - Guidebook (Go)

irisruneです。D問題を記事にする予定でしたがB問題が結構難しかったので取り上げてみました。 atcoder.jp 簡単なC問題(ex.ABC127C)より難しい気がします。 package main import ( "bufio" "fmt" "os" "sort" "strconv" ) var sc *bufio.Scanner func next…

ARC 048 B - AtCoderでじゃんけんを (Go)

irisruneです。本田圭佑選手とゲーセンのじゃんけんゲームはどっちの方が強いんでしょうかと思いました。 atcoder.jp 多分アルゴリズムを考えること自体はそこまで難しくはないと思うのですが、実装はやや重いと思います。 package main import ( "fmt" "sor…