2023-01-04 AGC024 の A, B を解いた
AGC024 : AtCoder Grand Contest 024 の A, B を解いた。
- A - Fairness
https://atcoder.jp/contests/agc024/tasks/agc024_a
- 提出: https://atcoder.jp/contests/agc024/submissions/37733480
- 何回分か書き出してみたら K が偶数のとき
A - B
奇数のとき-A + B
だった if k % 2 == 0 { a - b } else { -a + b }
- B - Backfront
https://atcoder.jp/contests/agc024/tasks/agc024_b
- 提出: https://atcoder.jp/contests/agc024/submissions/37734100
- 解説 AC
- 動かさないものを決めるのだろうとは思った
- 連続した数の位置関係が昇順になっていれば良い
- 1 からと N からだけを求めて 1WA
Q[P_i] = i
なQ
を求めて、Q[i] < Q[i+1]
になっている区間の長さの最大が動かさないものの最大長- あとは
N - 最大長
で答えになる
use proconio::{input, marker::Usize1};
fn main() {
input! {
n: usize,
p: [Usize1; n],
};
let mut q = vec![n; n];
for (i, p_i) in p.iter().copied().enumerate() {
q[p_i] = i;
}
let mut max = 1_usize;
let mut count = 1_usize;
let mut prev = q[0];
for q_i in q.into_iter().skip(1) {
if prev < q_i {
count += 1;
} else {
count = 1;
}
prev = q_i;
max = max.max(count);
}
let ans = n - max;
println!("{}", ans);
}
bouzuya/rust-sandbox の twiq-light で user id を https://api.twitter.com/2/users/me
で得るようにした。ハードコーディングされていた id がなくなり、認証済みのトークンだけで得られるようになったのは良い。無駄なやりとりなので、認証時に一度取得してあとは保持しておけば良いだけなんだけど……。
認証ユーザーが途中で変わった場合などに取得済みのツイートなどをどうすべきか。そんな状況はぼくひとりで使う限りは起きそうにないのだけど……。
子どもの送迎中にけがをした。つい先日もやけどした。けががおおい。
子どもの送迎に合わせて勤務時間を調整した。
今日のコミット。