おなかがいたい。
bouzuya/serde-firestore-value 。
自作の google crate から crates:google-api-proto に移行した。
prost-types のバージョンが下がったり、 HashMap
が BTreeMap
になったり、いろいろあるけど、ビルドに protoc が不要になったし、 crates.io への登録も見えてきたので良しとする。
PAST#13 第13回 アルゴリズム実技検定 過去問
- B - 分数比較
https://atcoder.jp/contests/past202212-open/tasks/past202212_b
- 提出: https://atcoder.jp/contests/past202212-open/submissions/45968796
- 除算を避けて
A * D
B * C
の比較にする B
とD
が正負が一致するならA * D < B * C
のとき<
となるがB
とD
の正負が一致しないならA * D > B * C
の判定になる<
が逆になると扱いづらいので後者のときB * C < A * D
と入れ替えることで判定しやすくしている
use proconio::input; fn main() { input! { a: i64, b: i64, c: i64, d: i64, }; let ad = a * d; let bc = b * c; let ans = match (b > 0, d > 0) { (true, true) | (false, false) => ad.cmp(&bc), (true, false) | (false, true) => bc.cmp(&ad), }; let ans = match ans { std::cmp::Ordering::Less => '<', std::cmp::Ordering::Equal => '=', std::cmp::Ordering::Greater => '>', }; println!("{}", ans); }
今日のコミット。
- rust-atcoder 1 commit
- serde-firestore-value 9 commits