結果

問題 No.2905 Nabeatsu Integration
ユーザー 👑 amentorimaruamentorimaru
提出日時 2024-06-04 11:50:55
言語 Ruby
(3.3.0)
結果
AC  
実行時間 897 ms / 2,000 ms
コード長 665 bytes
コンパイル時間 793 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 22,144 KB
最終ジャッジ日時 2024-09-07 11:33:56
合計ジャッジ時間 40,176 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 80 ms
12,288 KB
testcase_01 AC 84 ms
12,288 KB
testcase_02 AC 82 ms
12,416 KB
testcase_03 AC 84 ms
12,288 KB
testcase_04 AC 77 ms
12,288 KB
testcase_05 AC 84 ms
12,288 KB
testcase_06 AC 83 ms
12,288 KB
testcase_07 AC 87 ms
12,288 KB
testcase_08 AC 79 ms
12,288 KB
testcase_09 AC 83 ms
12,288 KB
testcase_10 AC 84 ms
12,288 KB
testcase_11 AC 88 ms
12,288 KB
testcase_12 AC 87 ms
12,288 KB
testcase_13 AC 82 ms
12,416 KB
testcase_14 AC 81 ms
12,544 KB
testcase_15 AC 84 ms
12,544 KB
testcase_16 AC 86 ms
12,288 KB
testcase_17 AC 82 ms
12,288 KB
testcase_18 AC 90 ms
12,288 KB
testcase_19 AC 87 ms
12,288 KB
testcase_20 AC 83 ms
12,288 KB
testcase_21 AC 89 ms
12,416 KB
testcase_22 AC 87 ms
12,416 KB
testcase_23 AC 881 ms
22,016 KB
testcase_24 AC 723 ms
22,016 KB
testcase_25 AC 865 ms
22,144 KB
testcase_26 AC 707 ms
21,888 KB
testcase_27 AC 657 ms
22,144 KB
testcase_28 AC 875 ms
21,888 KB
testcase_29 AC 880 ms
21,888 KB
testcase_30 AC 703 ms
21,888 KB
testcase_31 AC 709 ms
22,144 KB
testcase_32 AC 891 ms
21,888 KB
testcase_33 AC 866 ms
22,016 KB
testcase_34 AC 694 ms
21,888 KB
testcase_35 AC 870 ms
22,016 KB
testcase_36 AC 692 ms
21,888 KB
testcase_37 AC 666 ms
21,888 KB
testcase_38 AC 877 ms
22,016 KB
testcase_39 AC 700 ms
22,144 KB
testcase_40 AC 897 ms
21,888 KB
testcase_41 AC 880 ms
21,888 KB
testcase_42 AC 682 ms
22,016 KB
testcase_43 AC 554 ms
21,888 KB
testcase_44 AC 565 ms
22,016 KB
testcase_45 AC 567 ms
21,888 KB
testcase_46 AC 567 ms
21,888 KB
testcase_47 AC 555 ms
22,144 KB
testcase_48 AC 544 ms
21,888 KB
testcase_49 AC 541 ms
21,888 KB
testcase_50 AC 547 ms
21,888 KB
testcase_51 AC 552 ms
21,888 KB
testcase_52 AC 548 ms
21,888 KB
testcase_53 AC 545 ms
21,888 KB
testcase_54 AC 548 ms
21,888 KB
testcase_55 AC 543 ms
21,888 KB
testcase_56 AC 547 ms
21,888 KB
testcase_57 AC 565 ms
21,888 KB
testcase_58 AC 617 ms
21,888 KB
testcase_59 AC 868 ms
21,888 KB
testcase_60 AC 855 ms
22,016 KB
testcase_61 AC 451 ms
19,840 KB
testcase_62 AC 545 ms
21,760 KB
testcase_63 AC 534 ms
22,016 KB
testcase_64 AC 529 ms
21,760 KB
testcase_65 AC 624 ms
21,888 KB
testcase_66 AC 576 ms
21,888 KB
testcase_67 AC 550 ms
21,888 KB
testcase_68 AC 551 ms
21,888 KB
testcase_69 AC 548 ms
21,888 KB
testcase_70 AC 881 ms
22,016 KB
testcase_71 AC 886 ms
21,888 KB
testcase_72 AC 884 ms
22,016 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def z_algorithm(s)
  a = Array.new(s.length, 0)
  a[0] = s.length
  i = 1
  j = 0

  while i < s.length
    while i + j < s.length && s[j] == s[i + j]
      j += 1
    end
    a[i] = j
    if j == 0
      i += 1
      next
    end

    k = 1
    while i + k < s.length && k + a[k] < j
      a[i + k] = a[k]
      k += 1
    end

    i += k
    j -= k
  end

  a
end

def main
  s = gets.strip
  n = s.length
  a = z_algorithm(s)
  mod = 998244353
  ans = mod - n + 1
  add = 10
  i = n - 1
  while i >= 0
    if a[i] + i >= n
      ans += add
      ans %= mod
    end
    add *= 10
    add %= mod
    i -= 1
  end

  puts ans
end

main if __FILE__ == $PROGRAM_NAME
0