bouzuya.hatenablog.com

ぼうずやのにっき

bbna の進捗 / adt_easy_20240314_2

bouzuya/bbna のエントリの一覧と詳細画面を追加した。

Markdownコンパイル後の HTML を表示しようとして

https://www.npmjs.com/package/react-native-markdown-display

を使ってみた。

markdown-it で parse して react-native のコンポーネントで render している……のかな。読んでないけど。


adt_easy_20240314_2: AtCoder Daily Training EASY 2024/03/14 18:30start

use proconio::input;

fn f(ans: &mut Vec<char>, n: usize) {
    if n == 0 {
        return;
    }
    if n > 1 && n % 2 == 0 {
        ans.push('B');
        f(ans, n / 2);
    } else {
        ans.push('A');
        f(ans, n - 1);
    }
}

fn main() {
    input! {
        n: usize,
    }
    let mut ans = vec![];
    f(&mut ans, n);
    println!("{}", ans.into_iter().rev().collect::<String>());
}

今日のコミット。

2024-W11 ふりかえり

2024-W11 をふりかえる。

2024-W11 の目標 とその記事

目標。

  • ☑ 生活リズムを整える

記事。

つくったもの。

育児。

  • 上の子はテラリアをプレイしすぎている
  • 下の子は仮面ライダーの歌を歌っている

2024-W11 はどうだったか。

dependabot からの通知に従って定期バージョンアップしている。正しい。

ABC345 に参加した。 1333 → 1315 (-18) 。 https://atcoder.jp/users/bouzuya/history/share/abc345 。下げている。毎日問題を解く時間が惜しいと感じている。

2024-W12 の目標

  • bbna を一段落させる

EXPO_PUBLIC_ / adt_easy_20240314_1

bouzuya/bbnaEXPO_PUBLIC_API_URL 環境変数を追加した。

EXPO_PUBLIC_* は Expo 49 から追加された形式らしい。

https://docs.expo.dev/guides/environment-variables/#environment-variables-in-sdk-48-and-lower

わざわざ app.config.ts に追加する必要はないのだけど、わかりやすさの関係で追加しておいた。


adt_easy_20240314_1 : AtCoder Daily Training EASY 2024/03/14 16:30start

use std::collections::BTreeSet;

use proconio::input;

fn f(set: &mut BTreeSet<usize>, len: usize, ds: &mut Vec<usize>) {
    if len == 0 {
        let mut v = 0_usize;
        for d in ds.iter().copied() {
            v = v * 10 + d;
        }
        set.insert(v);
        return;
    }
    for i in (0..*ds.last().unwrap_or(&10)).rev() {
        ds.push(i);
        f(set, len - 1, ds);
        ds.pop();
    }
}

fn main() {
    input! {
        k: usize,
    };

    let mut set = BTreeSet::new();
    for len in 1..=10 {
        f(&mut set, len, &mut vec![]);
    }
    println!("{}", set.iter().nth(k).unwrap());
}

今日のコミット。

子どもとテラリア / ADT EASY 20240312 2

子どものテラリアに付き合わされている。

水曜日は dependabot から来る Pull Request に対応している。つまらないバージョンアップをしている。もっときちんとアプリケーションを書いたほうがいい。もうずっとろくにアプリケーションを書いていない。


AtCoder Daily Training EASY 2024/03/12 17:30start

use proconio::input;

fn main() {
    input! {
        n: usize,
        q: [usize; n],
        a: [usize; n],
        b: [usize; n],
    };

    let mut max = 0_usize;
    for x in 0..=1_000_000 {
        let mut ok = true;
        let mut y = 1_000_000;
        for ((q_i, a_i), b_i) in q
            .iter()
            .copied()
            .zip(a.iter().copied())
            .zip(b.iter().copied())
        {
            if q_i < a_i * x {
                ok = false;
                break;
            }
            let q_i = q_i - a_i * x;
            if b_i > 0 {
                y = y.min(q_i / b_i);
            }
        }
        if ok {
            max = max.max(x + y);
        }
    }
    let ans = max;
    println!("{}", ans);
}

今日のコミット。

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

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);
}

今日のコミット。

2024-W10 ふりかえり

2024-W10 をふりかえる。

2024-W10 の目標 とその記事

目標。

  • ☑ 『解像度を上げる』を読む
  • ☑ ぼくの PureScript 関連リポジトリを archived にする

記事。

つくったもの。

育児。

  • 上の子はカキの食わず嫌いを克服した
  • 下の子は

2024-W10 はどうだったか。

なんだかずっと疲れていた。土日もぐったりしていた。

ABC344 に参加した。 1332 → 1333 (+1) 。 https://atcoder.jp/users/bouzuya/history/share/abc344 。誤差。 ADT の過去問をはじめた。

気持ちを切り替えてリズムをつくっていきたい……。

2024-W11 の目標

  • 生活リズムを整える