Submission #3007867
Source Code Expand
#[allow(unused_imports)] use std::cmp::*; #[allow(unused_imports)] use std::collections::*; use std::io::{Read, Write, BufWriter}; #[allow(dead_code)] fn getline() -> String { let mut ret = String::new(); std::io::stdin().read_line(&mut ret).ok().unwrap(); ret } fn get_word() -> String { let mut stdin = std::io::stdin(); let mut u8b: [u8; 1] = [0]; loop { let mut buf: Vec<u8> = Vec::with_capacity(16); loop { let res = stdin.read(&mut u8b); if res.unwrap_or(0) == 0 || u8b[0] <= b' ' { break; } else { buf.push(u8b[0]); } } if buf.len() >= 1 { let ret = String::from_utf8(buf).unwrap(); return ret; } } } #[allow(dead_code)] fn get<T: std::str::FromStr>() -> T { get_word().parse().ok().unwrap() } fn solve() { let out = std::io::stdout(); let mut out = BufWriter::new(out.lock()); macro_rules! puts { ($format:expr) => (write!(out,$format).unwrap()); ($format:expr, $($args:expr),+) => (write!(out,$format,$($args),*).unwrap()) } let n = get(); let k: usize = get(); let x: Vec<usize> = (0 .. n).map(|_| get()).collect(); let mut heap = BinaryHeap::with_capacity(k + 1); for i in 0 .. k - 1 { heap.push((x[i], i)); } for i in k - 1 .. n { heap.push((x[i], i)); while heap.len() > k { heap.pop(); } puts!("{}\n", heap.peek().unwrap().1 + 1); } } fn main() { // In order to avoid potential stack overflow, spawn a new thread. let stack_size = 104_857_600; // 100 MB let thd = std::thread::Builder::new().stack_size(stack_size); thd.spawn(|| solve()).unwrap().join().unwrap(); }
Submission Info
Submission Time | |
---|---|
Task | B - 特別賞 |
User | kobae964 |
Language | Rust (1.15.1) |
Score | 100 |
Code Size | 1787 Byte |
Status | AC |
Exec Time | 40 ms |
Memory | 10876 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 | 3 ms | 8572 KB |
sample_02.txt | AC | 3 ms | 8572 KB |
subtask1_01.txt | AC | 3 ms | 8572 KB |
subtask1_02.txt | AC | 3 ms | 8572 KB |
subtask1_03.txt | AC | 3 ms | 8572 KB |
subtask1_04.txt | AC | 3 ms | 8572 KB |
subtask1_05.txt | AC | 3 ms | 8572 KB |
subtask1_06.txt | AC | 3 ms | 8572 KB |
subtask1_07.txt | AC | 3 ms | 8572 KB |
subtask1_08.txt | AC | 3 ms | 8572 KB |
subtask1_09.txt | AC | 3 ms | 8572 KB |
subtask1_10.txt | AC | 3 ms | 8572 KB |
subtask1_11.txt | AC | 3 ms | 8572 KB |
subtask2_01.txt | AC | 8 ms | 8572 KB |
subtask2_02.txt | AC | 3 ms | 8572 KB |
subtask2_03.txt | AC | 40 ms | 8828 KB |
subtask2_04.txt | AC | 35 ms | 8956 KB |
subtask2_05.txt | AC | 31 ms | 10492 KB |
subtask2_06.txt | AC | 37 ms | 10876 KB |
subtask2_07.txt | AC | 37 ms | 8828 KB |
subtask2_08.txt | AC | 37 ms | 8828 KB |
subtask2_09.txt | AC | 37 ms | 8828 KB |