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

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

C問題

AtCoder ARC 074 / ABC 062 C - Chocolate Bar (Go)

irisruneです。最近台風の接近が多く関東の天気は荒れがちですね。 問題 atcoder.jp 本当に全探索すると間に合わないので少しだけ工夫する問題です。 package main import ( "bufio" "fmt" "os" "sort" "strconv" ) var sc *bufio.Scanner func nextStr() st…

AtCoder AGC 024 C - Sequence Growing Easy (Go)

irisruneです。AtCoder用の手元環境をもう少し整備したい思いです。 問題 atcoder.jp 700点の割には単純な問題だと思います。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextStr() string { sc.Scan() return sc.Te…

AtCoder CODE FESTIVAL 2016 qual B C - Gr-idian MST (Go)

irisruneです。少し時間が取れなかったので月曜から過去問です。 問題 atcoder.jp 最小全域木を生成するアルゴリズムに貪欲法の要素を加えた感じになります。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextStr() s…

AtCoder ABC140 C - Maximal Value (Go)

irisruneです。台風の影響により、今週は火・水・金の投稿となります。 問題 https://atcoder.jp/contests/abc140/tasks/abc140_c からを逆算するにはどうすればいいかという問題です。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio…

AtCoder ABC125 C - GCD on Blackboard (Go)

irisruneです。先週のコンテストはC問題もD問題も難しかったので過去問(リベンジ)回です。 問題 atcoder.jp 累積GCDなるフレーズが一時トレンド入りしたりしました。累積和と微妙に扱いが異なる点に注意が必要です。 package main import ( "bufio" "fmt" …

AtCoder ABC 137 C - Green Bin (Go)

irisruneです。前回のコンテストは色々あり2完で-91(1292→1201)と大変冷えました。 問題 atcoder.jp 解き方自体は発想さえできればといったところですが、言語のソート仕様によっては実装が面倒になります。 実はこの提出コードはAC時のものではありません…

AtCoder Tenka1 Programmer Contest C - Align (Go)

irisruneです。お盆休みのある人もいたり学生さんは夏休みだったりしますが、よい休暇を過ごせるといいですね。 問題 atcoder.jp なんとなくでも解法が見えそうな問題ですが、証明が難しかったり落とし穴があったりします。 package main import ( "bufio" "…

AtCoder ABC 135 C - City Savers (Go)

irisruneです。ABC135参加はしましたが…D問題以降が解けずNoSub撤退をすることになりました。 問題 atcoder.jp 逆から解く必要があるように見えましたが全くそんなことはなかった問題です。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *b…

AtCoder AGC 035 C - Skolem XOR Tree (Rust)

irisruneです。Rust第一回ですが、余りにも茨の道すぎて早くも最終回が近い予感がしています。 前置き Rustは入力がかなり難解なので下記サイトよりマクロを拝借しております。中身はほとんど理解できていません。本ブログ上では記述を省略します。 qiita.co…

AtCoder ABC 133 C - Remainder Minimization 2019

irisruneです。求められるレベルが上がっている感じがあるので競プロの勉強もしたいですが、他にも勉強するべきことがあるので大変ですね。 問題 atcoder.jp うっかりするとWAを出してしまうこともあるかと思いましたが…気のせいかもしれません。実装はB問題…

AtCoder ABC 131 C - Anti-Division (Go)

irisruneです。久々にコンテストに参加した結果、5完で1242→1292とレートが伸びました。 問題 atcoder.jp 典型テクニックの寄せ集めのような問題だと思います。 なお、コンテスト本番でPythonを使う度胸はなかったので久々にGo言語で書いております。 packag…

AtCoder diverta 2019 Programming Contest 2 C - Successive Subtraction

irisruneです。他言語に慣れているとpythonの変数名にキャメルケースを使おうとするたびに警告を出されるのはもやもやします。 atcoder.jp B問題より簡単という噂を聞きましたが全然そんなことはなかったです。見た目以上に考えることが多く、ACするのに5回…

AtCoder ABC 129 C - Typical Stairs (Python)

irisruneです。今回不参加でしたがトラブルがあって大変だったみたいですね。 問題 atcoder.jp 当のトラブルがあった問題です。問題自体は最近珍しい気もする典型問題です。 import sys import numpy as np MOD = 1000000007 def main(): n, m = [int(x) for…

AtCoder ABC 128 C - Switches (Go)

irisruneです。今日の記事は参加しなかった方のコンテストです。 atcoder.jp ABC127とは打って変わって少々厄介な問題です。 package main import ( "bufio" "fmt" "math" "os" "strconv" ) var sc *bufio.Scanner func nextInt() int { sc.Scan() i, e := s…

AtCoder ABC 127 C - Prison (Go)

irisruneです。水パフォですが久々にレートが伸びて嬉しい気分ですね。 atcoder.jp 最近のC問題にしてはかなりシンプルな問題だと思います。 package main import ( "bufio" "fmt" "os" "strconv" ) var sc *bufio.Scanner func nextInt() int { sc.Scan() i…

AtCoder ABC 104 C - All Green を嘘解法で (Julia) (おまけ:ABC 116 D - Various Sushi をJuliaで書き直し)

irisruneです。今回もJuliaで問題を解いてみました。おまけで以前Go言語で解いた問題も解き直して実行時間など比較しています。 ABC 104 C - All Green atcoder.jp 当時2完で冷えた回ですが、今見ても300点にしては難しいと思います。なお嘘解法でゴリ押しで…

AtCoder ABC 100 C - *3 or /2 でJuliaを試してみる(Julia)

irisruneです。久々に新しい言語に挑戦してみた回です。 前置きをしておくと、今回は問題の難易度はかなり低めで言語周りの話がメインです。 なお、こちらの記事に多大な影響を受けているためこの場を借りて紹介させていただきます。 qiita.com そもそもJuli…

diverta 2019 Programming Contest C - AB Substrings / D - DivRem Number 失敗例と嘘解法(Go)

irisruneです。久々にコンテストに参加したらUnratedになったなんとも言い難いお話。 C - AB Substrings atcoder.jp 全探索は(かかるため)できないとして、計算で求めるための場合分けが難しかったです。まずは失敗例を。 package main import "fmt" func …

ARC 008 C - THE☆たこ焼き祭り2012(Go)

irisruneです。明日からGWです、休みの人もそうでない人も充実した10日間を過ごせればよいですね。 atcoder.jp なんと6年以上前の問題です。タイトルから問題文まで突っ込みどころが多すぎますが、推定難易度532点相当らしいです。 package main import ( "f…

ABC 123-C Five Transportations Go言語環境構築編(Go)

irisruneです。最近のD問題難しくないですかね… atcoder.jp 前回に引き続きGo言語ですが、今回は環境構築を行ったのでネタ作りのためその辺にも触れる予定です。 package main import ( "fmt" "math" ) func minArray(arr []int, nCity int) int { var minCa…

ABC 122-C GeT AC (Kotlin)

irisruneです。先週のAGCはA問題早解きで1300出ないらしいしABCはD問題が難しすぎるし過酷ですね… atcoder.jp この問題は数列の部分和を求める問題と(ほぼ)等価です。つまり典型問題ですね。 あらかじめ数列(文字列)の先頭から各インデックスまでの累積…

ABC119 C Synthetic Kadomatsu (C++)

irisruneです。今回はC++使ってた頃のコンテストなのでC++です。 atcoder.jp 自分が水色になった回でもある大変愉快な問題ですね。解くためのポイントは大きく2つあって、 の全探索アルゴリズムに持ち込めるか 1.を実装できるか まず1.について、この問題DP…

ABC121 C Energy Drink Collector,D XOR WorldをKotlinで解いてみた話

irisruneです。自己紹介でも軽く触れましたがKotlinが面白そうだったので過去問はだいたいKotlinでやります。 今日のテーマはちょっと軽めですがABC121のC問題とD問題。あと一応AtCoderで使うKotlinについて。 ABC121-C atcoder.jp やるだけソートの実装力が…