結果
問題 | No.318 学学学学学 |
ユーザー |
|
提出日時 | 2024-07-31 14:45:23 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 776 ms / 2,000 ms |
コード長 | 1,237 bytes |
コンパイル時間 | 12,841 ms |
コンパイル使用メモリ | 402,772 KB |
実行使用メモリ | 11,724 KB |
最終ジャッジ日時 | 2024-07-31 14:45:43 |
合計ジャッジ時間 | 19,371 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 26 |
コンパイルメッセージ
warning: unused imports: `BTreeSet`, `HashMap`, `HashSet`, `VecDeque`, `fmt::Debug`, `io::stdin`, `str::FromStr`, `sync::OnceLock` --> src/main.rs:2:19 | 2 | collections::{BTreeSet, HashMap, HashSet, VecDeque}, | ^^^^^^^^ ^^^^^^^ ^^^^^^^ ^^^^^^^^ 3 | fmt::Debug, | ^^^^^^^^^^ 4 | io::stdin, | ^^^^^^^^^ 5 | str::FromStr, | ^^^^^^^^^^^^ 6 | sync::OnceLock, | ^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default warning: unused import: `proconio::marker::Chars` --> src/main.rs:9:5 | 9 | use proconio::marker::Chars; | ^^^^^^^^^^^^^^^^^^^^^^^
ソースコード
use std::{ collections::{BTreeSet, HashMap, HashSet, VecDeque}, fmt::Debug, io::stdin, str::FromStr, sync::OnceLock, }; use proconio::marker::Chars; fn main() { proconio::input! { n: usize, a: [u64; n], } let mut s = a .iter() .copied() .enumerate() .map(|(i, v)| (v, i)) .collect::<Vec<_>>(); s.sort_unstable(); let s = { let mut t = Vec::new(); let mut i = 0; while i < n { let (value, first) = s[i]; let mut last = first; i += 1; while i < n { let (value2, idx) = s[i]; if value != value2 { break; } last = idx; i += 1; } t.push((value, first, last)); } t }; let mut r = a.clone(); for (value, first, last) in s { r[first..=last].fill(value); // for i in first..=last { // r[i] = std::cmp::max(r[i], value); // } } println!( "{}", r.into_iter() .map(|r| format!("{r}")) .collect::<Vec<String>>() .join(" ") ); }