yu/logs/*

技術メモ など

AtCoder ABC162 C 解法メモ (Kotlinで)最大公約数を求めたい(ユークリッドの互除法)

一応メモ 解いていた問題 atcoder.jp 解法メモ ユークリッドの互除法で計算する 実装メモ AtCoder 版!マスター・オブ・整数 (最大公約数編) - Qiitaを参考にKotlinで実装した ※解説(https://img.atcoder.jp/abc162/editorial.pdf)にも実装例(再帰/非再帰)…

AtCoder 鉄則本 B11 解法メモ Kotlinで超簡易版lower_bound, upper_bound

一応準備しておこうかと思って試作。あまりちゃんと分かってないので詳細理解は追って・・・ 解いていた問題 atcoder.jp 解法メモ 二分探索する Kotlin(Java)のbinarySearchではリスト内に同値がある場合に返る値が保証されない*1*2ため、lower_boundのよう…

AtCoder ABC294 D 解法メモ KotlinでTLEせずに10^6くらいの出力をしたい(出力の高速化)

単純なprintだとTLEするケースに初めて遭遇したのでメモ 解いていた問題 atcoder.jp 解法メモ setとかを使って上手いこと状態を管理 私はバケットで解いてました (考察的な部分は解説参照ということで) Editorial - AtCoder Beginner Contest 294 そこまで遅…

AtCoder ABC293 D 解法メモ KotlinでUnion-Findしたい

Union-Findのお勉強をしました。 解いていた問題 atcoder.jp 解法メモ ロープの両端をノードとして、そこに最初からリンクが貼ってあるものとして考えればよい ロープの組を作っていく方法はいくつかあるけど、Union-Findでサクっと解きたい Union-Findにつ…

AtCoder ABC156 B 解法メモ (Kotlinで)10進数⇔2進数の変換をしたい

サクっと済ませられる方法を見つけられたのでメモ 解いていた問題 atcoder.jp 解法メモ 基数変換を実装してあげれば済む問題 けど、標準の関数でもっと簡単に記述できる。 // 2進数⇔10進数 println("4".toInt().toString(2)) // 100 println("100".toInt(2))…

AtCoder ABC048 B 解法メモ a以上b以下の整数のうち、xで割り切れるものの個数を求めたい

ちょっと躓いたのでメモ 解いていた問題 atcoder.jp 解法メモ ポイントは3つ 大前提:「a(a>0)以下の整数のうちxで割り切れるものの個数」 = 「a/x ※小数点以下切り捨て」 ex) 8以下の整数のうち2で割り切れるものの個数は8/2=4個(2, 4, 6, 8の4個) (ここを…

AtCoder ABC128 B 解法メモ (Kotlinで)複数項目をキーにしてリストをソートしたい

タイトルの通りです。 普段はDBからselectする時にorder byすることが多い気がしますが、AtCoderをやっていてプログラミング言語側でちょっと複雑なソートをしたくなったので調べました。 解いていた問題 atcoder.jp 解法メモ 問題文の通りにソートする List<String></string>…