C++ の動作確認をしてみた(169)

C++の練習を兼ねて, AtCoder Beginner Contest 013 の 問題C (C – 節制) ~ 問題D (D – 阿弥陀) を解いてみた.

■感想.
1. 問題C は, 着眼点が見えなかったので, 解説どおりに実装したところ, AC版となった.
※ 質素な食事の最低回数を評価するときに, 0回以上とする点に注意が必要だった(01_010.txtなどでWAとなった).
2. 問題D は, ゴリゴリ実装する羽目になったものの, 解説見る前に, 何とかAC版となった.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 013解説をご覧下さい.

■C++版プログラム(問題C/AC版).

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 013

C++ の動作確認をしてみた(168)

C++の練習を兼ねて, AtCoder Beginner Contest 024 の 問題D (D – 動的計画法) を解いてみた.

■感想.
1. 着眼点が見えなかったので, 解説どおりに実装したところ, AC版となった.
2. 数式変形を駆使する解法に, 目から鱗だった.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 024解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 024

C++ の動作確認をしてみた(167)

C++の練習を兼ねて, AtCoder Beginner Contest 021 の 問題D (D – 多重ループ) を解いてみた.

■感想.
1. 重複組み合わせで出てくる計算結果に等しいことに気付けたので, AC版となった.
2. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 021解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 021

C++ の動作確認をしてみた(166)

C++の練習を兼ねて, AtCoder Beginner Contest 021 の 問題C (C – 正直者の高橋くん) を解いてみた.

■感想.
1. 最短距離を計算後(bfs)に, 経路をカウントする部分の方針が見えず, 解説を見て実装した.
2. 幅優先探索の復習が出来たので, 良かった思う.
3. DAG(Directed Acyclic Graph)という新しい知識に触れることが出来たので, 非常に良かったと思う.
4. 訪問済みフラグを, 頂点ベースで実装しても上手く行かなかったので, 辺ベースに変更したところ, AC版となった.
5. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 021解説をご覧下さい.

■C++版プログラム(問題C/AC版).

■参照サイト
AtCoder Beginner Contest 021

C++ の動作確認をしてみた(165)

C++の練習を兼ねて, AtCoder Beginner Contest 022 の 問題C (C – Blue Bird) を解いてみた.

■感想.
1. 方針が全く見えず, 解説を見て実装した.
2. Warshall–Floyd法の復習が出来たので, 非常に良かったと思う.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 022解説をご覧下さい.

■C++版プログラム(問題C/AC版).

■参照サイト
AtCoder Beginner Contest 022

C++ の動作確認をしてみた(164)

C++の練習を兼ねて, AtCoder Beginner Contest 022 の 問題D (D – Big Bang) を解いてみた.

■感想.
1. 重心から, 最も近い点を考慮して, 拡大率を求める方針で実装したが, AC版を取れなかった.
※ 解説を見たところ, 距離が, 0 になる場合があって, 場合分けが必要との指摘があった.
※ 途中, redeclared as different kind of symbol の error も 出てきて, 実装に手こずってしまった.
2. 解説にある方法の中で, 重心から, 最も遠い点を考慮する方針に変更したら, AC版となった.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 022解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 022

C++ の動作確認をしてみた(163)

C++の練習を兼ねて, AtCoder Beginner Contest 026 の 問題D (D – 高橋君ボール1号) を解いてみた.

■感想.
1. とりあえず, 解説見る前に, AC版となったので良かったと思う.
2. 誤差を小さくするために, 試行錯誤した気がする, あと, 検算も行って, 誤差も確認してみた.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 026解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 026
フリー計算

C++ の動作確認をしてみた(162)

C++の練習を兼ねて, AtCoder Beginner Contest 026 の 問題C (C – 高橋君の給料) を解いてみた.

■感想.
1. とりあえず, 解説見る前に, AC版となったので良かったと思う.
2. 個人的には, 非常に面白い問題に感じた.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 026解説をご覧下さい.

■C++版プログラム(問題C/AC版).

■参照サイト
AtCoder Beginner Contest 026

C++ の動作確認をしてみた(161)

C++の練習を兼ねて, AtCoder Beginner Contest 027 の 問題D (D – ロボット) を解いてみた.

■感想.
1. 方針が全く見えなかったので, 解説を確認して, 実装した.
2. 個人的には, 非常に摩訶不思議な解法に見えたとともに, アルゴリズムの奥深さに驚いた.
3. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 027解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 027

C++ の動作確認をしてみた(160)

C++の練習を兼ねて, AtCoder Beginner Contest 158 の 問題D (D – String Formation) を解いてみた(二回目).

■感想.
1. 前回版から, 実行時間を短縮できたので良かったと思う(1224[ms] ⇒ 42[ms]).
2. 時間を見つけて, 引き続き, 過去問を振り返っていきたいと思う.

本家のサイトABC 158解説をご覧下さい.

■C++版プログラム(問題D/AC版).

■参照サイト
AtCoder Beginner Contest 158