結果
問題 | No.1471 Sort Queries |
ユーザー |
![]() |
提出日時 | 2021-04-13 04:45:59 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 232 ms / 2,000 ms |
コード長 | 480 bytes |
コンパイル時間 | 187 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 15,360 KB |
最終ジャッジ日時 | 2024-06-28 23:17:29 |
合計ジャッジ時間 | 8,089 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 37 |
コンパイルメッセージ
Syntax OK
ソースコード
N, Q = gets.split.map(&:to_i) S = gets.chomp counter = Array.new(N + 1) { Array.new(26, 0) } N.times do |i| v = S[i].ord - 'a'.ord 26.times do |j| counter[i + 1][j] = counter[i][j] end counter[i + 1][v] += 1 end v = Array.new(26, 0) Q.times do l, r, x = gets.split.map(&:to_i) 26.times do |i| v[i] = counter[r][i] - counter[l - 1][i] end 1.upto(25) do |i| v[i] += v[i - 1] end idx = v.bsearch_index { |c| c >= x } puts (idx + 97).chr end