srupのメモ帳

競プロで解いた問題や勉強したことを記録していくメモ帳

2016-09-22から1日間の記事一覧

ABC 031 C - 数列ゲーム

問題 問題概要 省略 解法 いわれたとおりにシミュレーションを行う問題。高橋君の位置を固定して、その時に青木君が丸を付ける場所を探し、その時高橋君の得点を記録しておく。これを高橋君が選べるすべての場所について調べ、高橋君の得点が最大となるとき…

ABC 030 C - 飛行機乗り

問題 問題概要 省略 解法 貪欲に選んでいけばいい。なぜなら、飛行時間はxとyで決まっているので、乗れるだけ早い時間にのり、もう一方の空港に行っているほうが得。(損はない) 実装方法だが、今どちらの空港にいるのかが判断できるものと、いまの時刻がわか…

ABC 030 B - 時計盤

問題 問題概要 省略 解法 時計を1周分を360度と考えて、それぞれの針が何度回ったかを計算する。最後に注意しなければならないことがあり、針の角度の差を取ると、180度を超えることがあるが、それは角度の大きいほうを図ってしまったいるので、小さいほうを…

ABC 028 D - 乱数生成

問題 問題概要 省略 解法 場合分けする。 3つの数字が異なるとき、1つは、kで決まり、残りの2つは、kより小さいものから1つ、kより大きいものから1つ選べばよいので、その時の3つの数字の組み合わせを考える、(k - 1)*(n - k)となり、さらに、引く順番を考…

ABC 028 C - 数を3つ選ぶマン

abc

問題 問題概要 省略 解法 abcdeは重複を許さずに選ばなければならない。あとは、できるすべての作り、それをソートして、3番目答えとなる。a<b<c<d<eのため、1番目と2番目が等しいということはないので、単純にソートして3番目を選ぶだけで十分かな。 ミス 今回のセットはabc27と比べるとレベルが違いすぎる。 コード #include <iostream> #include <cstdio> #include <set> #include <vector> #include <algorithm> using namespace std; typedef long long ll; #d…</algorithm></vector></set></cstdio></b<c<d<eのため、1番目と2番目が等しいということはないので、単純にソートして3番目を選ぶだけで十分かな。>

ABC 027 B - 島と橋

問題 問題概要 省略 解法 まず、すべての住人の数を求めて、それを島の数で割り切れなければ、-1を出力すればいい。また、住民の合計と、島の数から、1つの島に住んでいなければならない人数もわかる。橋を架けなければならない場所の判定は、橋の左側と、右…