DOJ logoDOJ
問題
最近追加された問題保存した問題Workbooks
カテゴリDLCコンテストグループチーム掲示板
ランキング
正解数ランキングストリークランキングDOJ Powerランキング
提出状況
問題募集ログイン新規登録
DOJ logoDOJ

OI形式のサブタスク採点、Eloレーティング、Discord連携を備えたオンラインジャッジです。

問題
問題一覧カテゴリ
コミュニティ
コンテストランキング掲示板お知らせ外部のコンテストを開催するガイド
アカウント
ログイン新規登録ジャッジ状態
ポリシー
利用規約DLCの利用規則プライバシーAPI 文書言語ランタイムコンテストの順位報酬レーティングとパフォーマンス
© 2026 DOJ
All rights reserved
解説

数列を未整列にする 2

問題に戻る

解説

相異なる並べ替えのうち整列済みのものはちょうど 111 個である。接頭辞の並べ替え数を WWW とする。iii 個目を加え、その値の頻度が ccc になったら W←W⋅i/cW\leftarrow W\cdot i/cW←W⋅i/c と更新し、最後に W−1W-1W−1 を出力する。接頭辞の並べ替え数は全体以下なので W≤1012+1W\leq10^{12}+1W≤1012+1。乗算も (1012+1)105<1.01⋅1017(10^{12}+1)10^5<1.01\cdot10^{17}(1012+1)105<1.01⋅1017 以下で符号付き64ビットに収まる。マップを使うと時間 O(Nlog⁡N)O(N\log N)O(NlogN)。