Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ACPC 2019 Day3 C: カニサル暗号

2019/9/20 会津大学競技プログラミング合宿 Day3 (北大セット) C 問題
※文字が見えない場合は、ダウンロードするかフルスクリーンにしてご覧ください

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

  • Be the first to like this

ACPC 2019 Day3 C: カニサル暗号

  1. 1. C 問題 解説 原案,解説:えびちゃん ACPC 2019, Day 3 C 問題 解説 原案,解説:えびちゃん
  2. 2. 問題概要 {0, 1, . . . , 9} からなる順列 P と非負整数 D があり,長さが D の 桁数と等しい文字列 C を次のように作る. D の上から i 桁目が j であるとき C の i 文字目は Pj である. このとき,C の先頭には余分な 0 がつくこともある. D を 109 + 7 で割った余り M と,文字列 C が与えられる. D としてありうる整数が存在する場合はそれを復元し,なければ -1 を出力せよ.1 ⩽ |C| ⩽ 105,0 ⩽ M < 109 + 7. C 問題 解説 原案,解説:えびちゃん
  3. 3. 考察 std::next_permutation を知っていますか? 順列 P を全通り試してみることを考える. これは 10! = 3628800 通りある. 毎回 O(|C|) 時間かけて復元すると TLE しそう. どうしよう? C 問題 解説 原案,解説:えびちゃん
  4. 4. 考察 各数字 i について,C 中の i を 1 に,それ以外を 0 に置き換えた ものを 109 + 7 で割った余りを求め,これを f(i) としてメモして おく. 例:C = 30386 0 → 01000, f(0) = 1000 3 → 10100, f(3) = 10100 6 → 00001, f(6) = 1 8 → 00010, f(8) = 10 各順列 P′ に対して (∑9 i=0 f(i) · Pi ) mod 109 + 7 を求め,それが M と一致すれば OK. C 問題 解説 原案,解説:えびちゃん
  5. 5. コーナーケース leading-zero の扱いには注意. 先頭が 0 の解はだめ? → D = 0 のとき墜ちそう. → これのせいで一発 AC なし. leading zero がある解を見つけた時点で -1 を出力? → 例:以下は両方 469 と合同. 0000000000000000469 6666666666666666809 C 問題 解説 原案,解説:えびちゃん
  6. 6. まとめ・計算量 O(|C| · |P|) 時間かけて f(0), f(1), . . . , f(9) を求める. 各順列の候補 P′ に対して O(|P′|) 時間で復元を行う. 全体の計算量は O(|C| · |P| + |P| · |P|!) = O(|P| · (|C| + |P|!)). C 問題 解説 原案,解説:えびちゃん
  7. 7. 終 制作・著作 いつもの ジャッジ解 TAB: 40 行,813 bytes rsk0315: 39 行,811 bytes tsutaj: 50 行,1209 bytes First acceptance on-site: acpc_chunithm 13:02 online: lyrically 11:39 Acceptance rate: 27/90 (30.00%) C 問題 解説 原案,解説:えびちゃん

    Be the first to comment

    Login to see the comments

2019/9/20 会津大学競技プログラミング合宿 Day3 (北大セット) C 問題 ※文字が見えない場合は、ダウンロードするかフルスクリーンにしてご覧ください

Views

Total views

154

On Slideshare

0

From embeds

0

Number of embeds

0

Actions

Downloads

2

Shares

0

Comments

0

Likes

0

×