Submission #29862145
Source Code Expand
use proconio::input;
fn main() {
input! {
n: usize,
abc: [(usize, usize, usize); n],
};
let mut max = 0_f64;
for (a1, b1, c1) in abc.iter().copied() {
for (a2, b2, c2) in abc.iter().copied() {
if a1 * b2 == b1 * a2 {
continue;
}
let (a1, b1, c1) = (a1 as f64, b1 as f64, c1 as f64);
let (a2, b2, c2) = (a2 as f64, b2 as f64, c2 as f64);
let x = (c2 * b1 - c1 * b2) / (a2 * b1 - a1 * b2);
let y = (c2 * a1 - c1 * a2) / (b2 * a1 - b1 * a2);
if abc
.iter()
.copied()
.all(|(a, b, c)| a as f64 * x + b as f64 * y <= c as f64)
{
max = max.max(x + y);
}
}
}
let ans = max;
println!("{}", ans);
}
Submission Info
| Submission Time | |
|---|---|
| Task | 071 - Linear Programming |
| User | bouzuya |
| Language | Rust (1.42.0) |
| Score | 1000 |
| Code Size | 839 Byte |
| Status | AC |
| Exec Time | 13 ms |
| Memory | 2208 KiB |
Judge Result
| Set Name | All | ||
|---|---|---|---|
| Score / Max Score | 1000 / 1000 | ||
| Status |
|
| Set Name | Test Cases |
|---|---|
| All | in01, in02, in03, in04, in05, in06, in07, in08, in09, in10, in11, in12, in13, in14, in15, in16, in17, in18, in19, in20, sample_01 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| in01 | AC | 5 ms | 2100 KiB |
| in02 | AC | 6 ms | 2120 KiB |
| in03 | AC | 11 ms | 2184 KiB |
| in04 | AC | 2 ms | 2108 KiB |
| in05 | AC | 13 ms | 2160 KiB |
| in06 | AC | 2 ms | 2112 KiB |
| in07 | AC | 6 ms | 2160 KiB |
| in08 | AC | 3 ms | 2004 KiB |
| in09 | AC | 9 ms | 2112 KiB |
| in10 | AC | 3 ms | 2096 KiB |
| in11 | AC | 12 ms | 2180 KiB |
| in12 | AC | 2 ms | 2208 KiB |
| in13 | AC | 5 ms | 2104 KiB |
| in14 | AC | 9 ms | 2144 KiB |
| in15 | AC | 2 ms | 2196 KiB |
| in16 | AC | 12 ms | 2164 KiB |
| in17 | AC | 7 ms | 2184 KiB |
| in18 | AC | 9 ms | 2024 KiB |
| in19 | AC | 3 ms | 2088 KiB |
| in20 | AC | 10 ms | 2020 KiB |
| sample_01 | AC | 2 ms | 2200 KiB |