結果
問題 | No.799 赤黒かーどげぇむ |
ユーザー |
![]() |
提出日時 | 2020-08-01 12:11:16 |
言語 | Rust (1.83.0 + proconio) |
結果 |
AC
|
実行時間 | 1 ms / 2,000 ms |
コード長 | 724 bytes |
コンパイル時間 | 13,173 ms |
コンパイル使用メモリ | 378,508 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-07 21:47:22 |
合計ジャッジ時間 | 14,546 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 20 |
ソースコード
use std::io::Read;fn read<T: std::str::FromStr>() -> T {let token: String = std::io::stdin().bytes().map(|c| c.ok().unwrap() as char).skip_while(|c| c.is_whitespace()).take_while(|c| !c.is_whitespace()).collect();token.parse().ok().unwrap()}fn main() {let mut a: i32 = read();let mut b: i32 = read();let mut c: i32 = read();let mut d: i32 = read();if a > c {std::mem::swap(&mut a, &mut c);std::mem::swap(&mut b, &mut d);}println!("{}",if d <= b {(d - c + 1) * (b - a + 1 - 1)} else {(b - a + 1) * (d - c + 1) - std::cmp::max(0, b - c + 1)});}