AtCoder Beginner Contest 156 参加記
Atcoder Beginner Contest 156 (2020,02,22)参加記
こんにちは。昨日ABC156に参加された皆さん、お疲れ様でした。
私の方ですが結果から申しますとぎりぎり茶パフォーマンスということになりました。
パフォーマンス:403 レーティング 474→467 (3完40分程度)
【解説】
A問題 Beginner
https://atcoder.jp/contests/abc156/tasks/abc156_a
内部レーティングをとすると、
のとき、、
そうでないときとすればよい。
B問題 Digits
https://atcoder.jp/contests/abc156/tasks/abc156_b
基本情報技術者のような問題
がより小さくなるまで以下の処理をつづける。
(つまり )
をで割ったあまりをリストに入れて、(をで割った商)とする。
そのあと、割れなくなったあまりをリストに加える。
あとは、そのリストの要素数が答えで、これを出力すればよい。
ちなみに
N進数をK進数に直す問題は基本情報技術者試験の範囲内です。
例)10進数の整数を進数で直す
例) , の場合
10÷2 = 5 あまり 0
5÷2 = 2 あまり 1
2÷2 = 1 あまり 0
1÷2 = 0 あまり 1
ここで、商が0になったことにより、計算を終了。あまりを下から上に読むと、となり、これで10を2進数で表すことができました。
C問題 Rally
https://atcoder.jp/contests/abc156/tasks/abc156_c
ここで、集会が数直線上の任意の整数値の座標で開くことができるとなっているのがポイント。
今回、人の座標集合について平均を取得し、それをPython3ならroundでまとめたときの値(座標)が、人が消費する体力の総和が最小値となるであることを考察しました
(なお、1回目は平均を切り上げてしまい痛恨のWA...)
D問題 Bouquet
https://atcoder.jp/contests/abc156/tasks/abc156_d
この問題ですが、組み合わせnCkにおけるkが1からnのときの組み合わせの総和がであることから、
を出力するという問題でした。
数式はわかったのですが、出力がわからずあえなく撃沈。
解説を見ても何とフェルマーの小定理というものが出ていたことから高度な数学力が問われていたように感じます。(自分は数弱なんですが....)
ということでABCD(Dは解説じゃないですが)の解説でした。
何か感想だったり、解法で面白いものとかがあったりしたらコメントなどでお願いします。
それでは今回はこの辺で。
追記)
AtCoderのコンテスト中ではありますが、22:22:22にツイートを行いました。
すると、このツイートが なんと22:22:22.224にツイートされたことがわかりました。
おそらく世界一...22:22:22.222に近いツイートをしていると思います。暇な方は見てください((
https://twitter.com/rute_not_route/status/1231207604178698240