fn multiply_will_overflow(x: i64, y: i64) -> bool {
x.checked_mul(y).is_none()
}
// i64::MAX = 9223372036854775807
fn main() {
let x: i64 = 39839299;
let y: i64 = 1472783642;
println!("{}", if multiply_will_overflow(x, y) { "true" } else { "false" });
let x: i64 = 9223372036854775807;
let y: i64 = 2;
println!("{}", if multiply_will_overflow(x, y) { "true" } else { "false" });
}
/*
run:
false
true
*/