2024-02-12 ブラーバの替えのタイヤを試す / ポップコーン / ABC340 C
2024-02-09 のブラーバの件。替えのタイヤを買ってみた。純正のものではない。取付時のネジの扱いやはめ込みに若干の苦しさがあった。効果は様子見する。
タイヤの空転自体は以前も起きて、そのときはタイヤを掃除したら収まっていたので大丈夫かと思っていたけどそうでもなかったので今回の購入に至った。今回の交換で起きなくなってくれればいいんだけど……。
下の子はポップコーンをポコポンと呼ぶ。
ABC340 : 鹿島建設プログラミングコンテスト2024(AtCoder Beginner Contest 340)
- C - Divide and Divide
https://atcoder.jp/contests/abc340/tasks/abc340_c
- 提出: https://atcoder.jp/contests/abc340/submissions/50231044
N <= 10^17
と大きいものの、 2 で割っていくので x はすぐに小さくなる- 同じ数に対しての処理が繰り返されるので、メモ化再帰にしておく
use std::collections::HashMap;
use proconio::input;
fn dfs(memo: &mut HashMap<usize, usize>, x: usize) -> usize {
if x == 0 || x == 1 {
return 0;
}
if let Some(&v) = memo.get(&x) {
return v;
}
let v = x + dfs(memo, x / 2) + dfs(memo, (x + 1) / 2);
memo.insert(x, v);
v
}
fn main() {
input! {
n: usize,
};
let ans = dfs(&mut HashMap::new(), n);
println!("{}", ans);
}
今日のコミット。