Submission #1869956
Source Code Expand
use std::io; use std::cmp; fn main() { let n = read_values::<usize>()[0]; let mut hp = (0..n).map(|_| { let v = read_values::<usize>(); (v[0], v[1]) }).collect::<Vec<_>>(); hp.sort_by(|a, b| { let (h1, p1) = *a; let (h2, p2) = *b; (h1 + p1).cmp(&(h2 + p2)) }); let inf = 1e15 as usize; let mut dp = vec![inf; n + 1]; dp[0] = 0; for i in 0..n { let (h, p) = hp[i]; for j in (0..n).rev() { if dp[j] <= h { dp[j + 1] = cmp::min(dp[j + 1], dp[j] + p); } } } let mut ans = 0; for i in 0..n { if dp[i + 1] < inf { ans = cmp::max(ans, i + 1); } } println!("{}", ans); } fn read_line() -> String { let stdin = io::stdin(); let mut buf = String::new(); stdin.read_line(&mut buf).unwrap(); buf } fn read_values<T>() -> Vec<T> where T: std::str::FromStr, T::Err: std::fmt::Debug { read_line() .split(' ') .map(|a| a.trim().parse().unwrap()) .collect() }
Submission Info
Submission Time | |
---|---|
Task | D - Zabuton |
User | kenkoooo |
Language | Rust (1.15.1) |
Score | 700 |
Code Size | 1144 Byte |
Status | AC |
Exec Time | 36 ms |
Memory | 4352 KB |
Judge Result
Set Name | sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 700 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
sample | sample-01.txt, sample-02.txt, sample-03.txt |
All | sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, sample-01.txt, sample-02.txt, sample-03.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 2 ms | 4352 KB |
01-02.txt | AC | 2 ms | 4352 KB |
01-03.txt | AC | 4 ms | 4352 KB |
01-04.txt | AC | 8 ms | 4352 KB |
01-05.txt | AC | 28 ms | 4352 KB |
01-06.txt | AC | 28 ms | 4352 KB |
01-07.txt | AC | 28 ms | 4352 KB |
01-08.txt | AC | 28 ms | 4352 KB |
01-09.txt | AC | 28 ms | 4352 KB |
01-10.txt | AC | 2 ms | 4352 KB |
01-11.txt | AC | 3 ms | 4352 KB |
01-12.txt | AC | 12 ms | 4352 KB |
01-13.txt | AC | 28 ms | 4352 KB |
01-14.txt | AC | 30 ms | 4352 KB |
01-15.txt | AC | 30 ms | 4352 KB |
01-16.txt | AC | 30 ms | 4352 KB |
01-17.txt | AC | 30 ms | 4352 KB |
01-18.txt | AC | 30 ms | 4352 KB |
01-19.txt | AC | 2 ms | 4352 KB |
01-20.txt | AC | 3 ms | 4352 KB |
01-21.txt | AC | 18 ms | 4352 KB |
01-22.txt | AC | 33 ms | 4352 KB |
01-23.txt | AC | 33 ms | 4352 KB |
01-24.txt | AC | 33 ms | 4352 KB |
01-25.txt | AC | 33 ms | 4352 KB |
01-26.txt | AC | 33 ms | 4352 KB |
01-27.txt | AC | 33 ms | 4352 KB |
01-28.txt | AC | 28 ms | 4352 KB |
01-29.txt | AC | 28 ms | 4352 KB |
01-30.txt | AC | 28 ms | 4352 KB |
01-31.txt | AC | 28 ms | 4352 KB |
01-32.txt | AC | 28 ms | 4352 KB |
01-33.txt | AC | 28 ms | 4352 KB |
01-34.txt | AC | 28 ms | 4352 KB |
01-35.txt | AC | 36 ms | 4352 KB |
01-36.txt | AC | 36 ms | 4352 KB |
01-37.txt | AC | 36 ms | 4352 KB |
01-38.txt | AC | 36 ms | 4352 KB |
01-39.txt | AC | 36 ms | 4352 KB |
01-40.txt | AC | 28 ms | 4352 KB |
sample-01.txt | AC | 2 ms | 4352 KB |
sample-02.txt | AC | 2 ms | 4352 KB |
sample-03.txt | AC | 2 ms | 4352 KB |