Codeforces Beta Round #91 (Div. 1 Only)

出ました。
○○○-- 2178pts 118th
Rating: 1932 -> 1987

レーティング上がってきてやばい、もうすぐ赤やん・・・。
SRMより、長時間なのがあってるのかもしれない。

A. Lucky Sum

やるだけ。

B. Lucky Transformation

基本的にシミュレーション。
ただし特定パターンで無限ループに入るので
(447 -> 477 -> 447 -> 477 -> ...)
その場合のみ例外として扱う。

C. Lucky Permutation

nが大きいが、k に制限があるため末尾だけシミュレーションすればいい。
とは言っても、k <= 10^9 なので愚直に next_permutation すると無理なので工夫が必要。
シミュレーションするコードを書くのに時間がかかってしまったのが反省点。
まあpermutationについて深く考える良い機会になったと思う。

D. Lucky Segments

10^18以下のLucky numberの個数をmとして、O(m*m*n)の解放しか思い浮かばなかった。
mもnもそれなりに大きくて明らかにこれは間に合わない。
どうやるんだろう・・・。

E. Lucky Array

読んでない