結果
問題 | No.5 数字のブロック |
ユーザー |
|
提出日時 | 2020-08-20 16:46:01 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 977 bytes |
コンパイル時間 | 12,520 ms |
コンパイル使用メモリ | 378,744 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-13 13:25:50 |
合計ジャッジ時間 | 13,802 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 34 |
コンパイルメッセージ
warning: variable `L` should have a snake case name --> src/main.rs:13:13 | 13 | let mut L: i64 = lv[0].parse().unwrap(); // 箱の幅 | ^ help: convert the identifier to snake case: `l` | = note: `#[warn(non_snake_case)]` on by default warning: variable `_N` should have a snake case name --> src/main.rs:14:9 | 14 | let _N: i64 = nv[0].parse().unwrap(); // ブロックの数 | ^^ help: convert the identifier to snake case: `_n` warning: variable `W` should have a snake case name --> src/main.rs:18:13 | 18 | let mut W: Vec<_> = wl.iter().map(|f| f.parse::<i64>().unwrap()).collect(); | ^ help: convert the identifier to snake case (notice the capitalization): `w`
ソースコード
fn getline() -> String{let mut __ret=String::new();std::io::stdin().read_line(&mut __ret).ok();return __ret;}fn main() {let l = getline();let n = getline();let w = getline();let lv: Vec<_> = l.trim().split(' ').collect();let nv: Vec<_> = n.trim().split(' ').collect();let mut L: i64 = lv[0].parse().unwrap(); // 箱の幅let _N: i64 = nv[0].parse().unwrap(); // ブロックの数let wl: Vec<_> = w.trim().split(' ').collect(); // 各ブロックの幅// ソートする前に文字列を数値に変換するlet mut W: Vec<_> = wl.iter().map(|f| f.parse::<i64>().unwrap()).collect();// 小さい順でブロックを箱に詰めていくのでソートするW.sort();let mut count: i64 = 0;for item in W.iter() {let x: i64 = item.to_string().parse().unwrap();L = L - x;if L < 0 {break;}count += 1;}println!("{}", count);}