fn main() { let mut abcdpq = String::new(); std::io::stdin().read_line(&mut abcdpq).ok(); let abcdpq: Vec = abcdpq.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); let a = abcdpq[0]; let b = abcdpq[1]; let c = abcdpq[2]; let d = abcdpq[3]; let p = abcdpq[4]; let q = abcdpq[5]; let mut minval: (isize, isize) = (p, 1e18 as isize); let mut maxval: (isize, isize) = (p, - 1e18 as isize); for i in p..=q { let val = a * i * i * i + b * i * i + c * i + d; if minval.1 > val { minval = (i, val); } if maxval.1 < val { maxval = (i, val); } } println!("{} {} {} {}", maxval.1, maxval.0, minval.1, minval.0); }