0.はじめに
相性の問題か、Bの難易度が高くCは簡単に感じました。
Dは、一応取り組みましたが、回答のきっかけさえつかめず
解説を読んでもいまいちよくわかりませんでした‥。
相性が悪いペアを同じチームにしないことが
本当にPeacefulと言えるのか、と、質問しようかと思いましたが
思いとどまりました。
C問題までしか解けなかった割には、順位は高く
レートは+32でした。
1.A - Order Something Else
Aにしてはややこしい感じではありますが
実装はそれほど悩まず、リスト内で最小の値+Qと
Pのうち、小さい方を表示することでACできました。
https://atcoder.jp/contests/abc310/submissions/43584547
2.B - Strictly Superior
ほんとに200点の問題??と疑いたくなるような難易度でした。
解説を見てもそこそこ難しい解答方法でした。
愚直に、全組み合わせのiとjについて
iの値段>jの値段の場合
iの機能がすべてjの機能にあるかチェック
→あればYesを出力してプログラム終了
iの値段=jの値段の場合
iの機能がすべてjの機能にあるかチェック
→あればjの機能のうちiにない機能があるかチェック
→あれば、Yesを出力してプログラム終了
すべての組み合わせを終えてプログラムが継続していたら
(条件を満たすiとjがなければ)
Noを出力してプログラム終了
と、考えは単純ですが、実装はてこずりました。
https://atcoder.jp/contests/abc310/submissions/43608108
3.C - Reversible
打って変わって簡単な問題。
解説を見るとsetを使うのが普通のようですが
慣れ親しんだ辞書を使って回答しました。
空辞書dを準備して、文字列Sを取得し
文字列Sか、文字列Sを逆にした文字列RS(RS=[::-1])が
辞書になかったらSを辞書に登録
Sをすべて取得したあと
len(d)を出力して終了
https://atcoder.jp/contests/abc310/submissions/43611297
以上