2024-03-12 bouzuya/firestore-structured-query 0.8.2 / ADT EASY 20240312_1
AtCoder 以外でほとんどコードを書いていない、良くない。
bouzuya/firestore-structured-query を 0.8.2 にした。 FieldPath::new
の \
のエスケープに失敗していたので修正した。
GitHub のプロフィールページに表示されるリポジトリである bouzuya/bouzuya を変更して crates.io の crate のバージョンのバッジやダウンロード数のバッジを表示してみた。
AtCoder Daily Training EASY 2024/03/12 15:30start
- A - Distinct Strings
https://atcoder.jp/contests/adt_easy_20240312_1/tasks/abc225_a
- 提出: https://atcoder.jp/contests/adt_easy_20240312_1/submissions/51180873
- 取り得る値は 1, 2, 3 の 3 通り、すべて入力例にある
- B - Three Threes
https://atcoder.jp/contests/adt_easy_20240312_1/tasks/abc333_a
- 提出: https://atcoder.jp/contests/adt_easy_20240312_1/submissions/51180873
n.to_string().repeat(n)
- C - Perfect String
https://atcoder.jp/contests/adt_easy_20240312_1/tasks/abc249_b
- 提出: https://atcoder.jp/contests/adt_easy_20240312_1/submissions/51180945
any
でchar::is_ascii_uppercase
とchar::is_ascii_lowercase
を調べて最後に set の len が元の len と一致すれば指示通りに検証できる
- D - chess960
https://atcoder.jp/contests/adt_easy_20240312_1/tasks/abc297_b
- 提出: https://atcoder.jp/contests/adt_easy_20240312_1/submissions/51181088
B
とR
とK
の位置を調べておいてあとは指示通りに検証する
- E - T-shirts
https://atcoder.jp/contests/adt_easy_20240312_1/tasks/abc332_c
- 提出: https://atcoder.jp/contests/adt_easy_20240312_1/submissions/51181270
- 逆順に走査して無地・ロゴをそれぞれカウントする
'0'
はそれぞれのカウントをリセット'1'
は M 未満なら無地を加算、そうでなければロゴを加算'2'
はロゴを加算- 最後まで走査してそこまでのロゴの最大値が答えになる
use proconio::{input, marker::Chars};
fn main() {
input! {
_n: usize,
m: usize,
s: Chars,
};
let mut max = 0_usize;
let mut count1 = 0;
let mut count2 = 0;
for c in s.iter().copied().rev() {
match c {
'0' => {
count1 = 0;
count2 = 0;
}
'1' => {
if count1 < m {
count1 += 1;
} else {
count2 += 1;
max = max.max(count2);
}
}
'2' => {
count2 += 1;
max = max.max(count2);
}
_ => unreachable!(),
}
}
let ans = max;
println!("{}", ans);
}
今日のコミット。