Submission #2575295
Source Code Expand
class Heap attr_reader :size def initialize @heap = [] @size = 0 end def length @size end def push(x) i = @size @size += 1 while i > 0 do p = (i - 1) / 2 break if @heap[p] <= x @heap[i] = @heap[p] i = p end @heap[i] = x self end def pop return nil if @size == 0 ret = @heap[0] @size -= 1 x = @heap[@size] i = 0 while i * 2 + 1 < @size do a = i * 2 + 1 b = a + 1 if b < @size && @heap[b] < @heap[a] a = b end break if @heap[a] >= x @heap[i] = @heap[a] i = a end @heap[i] = x @heap.pop return ret end end N, K = gets.split.map(&:to_i) xs = gets.split.map{|s| -s.to_i} rev = {} N.times do |i| rev[xs[i]] = i end heap = Heap.new K.times do |i| heap.push(xs[i]) end tmp = heap.pop puts rev[tmp] + 1 heap.push(tmp) (K...N).each do |i| heap.push(xs[i]) heap.pop tmp = heap.pop puts rev[tmp] + 1 heap.push(tmp) end
Submission Info
Submission Time | |
---|---|
Task | B - 特別賞 |
User | betrue12 |
Language | Ruby (2.3.3) |
Score | 100 |
Code Size | 1245 Byte |
Status | AC |
Exec Time | 977 ms |
Memory | 17932 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 40 / 40 | 60 / 60 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt |
Subtask2 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 7 ms | 1788 KB |
sample_02.txt | AC | 7 ms | 1788 KB |
subtask1_01.txt | AC | 7 ms | 1788 KB |
subtask1_02.txt | AC | 7 ms | 1788 KB |
subtask1_03.txt | AC | 7 ms | 1788 KB |
subtask1_04.txt | AC | 7 ms | 1788 KB |
subtask1_05.txt | AC | 14 ms | 1916 KB |
subtask1_06.txt | AC | 10 ms | 1916 KB |
subtask1_07.txt | AC | 8 ms | 1916 KB |
subtask1_08.txt | AC | 13 ms | 1916 KB |
subtask1_09.txt | AC | 12 ms | 1916 KB |
subtask1_10.txt | AC | 13 ms | 1916 KB |
subtask1_11.txt | AC | 12 ms | 1916 KB |
subtask2_01.txt | AC | 131 ms | 3964 KB |
subtask2_02.txt | AC | 14 ms | 1916 KB |
subtask2_03.txt | AC | 905 ms | 17880 KB |
subtask2_04.txt | AC | 279 ms | 17676 KB |
subtask2_05.txt | AC | 125 ms | 15500 KB |
subtask2_06.txt | AC | 852 ms | 17932 KB |
subtask2_07.txt | AC | 818 ms | 17804 KB |
subtask2_08.txt | AC | 977 ms | 17804 KB |
subtask2_09.txt | AC | 835 ms | 17880 KB |