Java の失敗率ソート:分母・同率・long の積
停止人数と到達人数を数え、long の交差積で失敗率を正確に比較します。未到達のステージ、全クリア、同率時の番号順を扱います。
Java、Spring、テスト、ソフトウェア開発の実践ノートと参考資料。
すべての記事 →停止人数と到達人数を数え、long の交差積で失敗率を正確に比較します。未到達のステージ、全クリア、同率時の番号順を扱います。
アクセス順の LinkedHashMap で LRU を再現し、ヒット時の更新、追い出し、大文字小文字を区別しないキー、容量ゼロ、コストモデルの前提を確認します。
Optional のチェーンとループで ID を正規化します。連続するドット、フィルター後の空文字、切り詰め後の処理、補完、ロケールへの非依存性を確認します。
スタックで隣接する同一文字のペアを削除します。接頭辞の不変条件、連鎖する削除、百万文字の境界と時間・空間計算量を説明します。
数字と zero から nine の単語が混ざった有効な入力をリテラル置換で正規化します。replace と replaceAll の違い、整数の範囲と適用条件を説明します。
HashMap で参加者の頻度から完走者の頻度を引きます。Set の差では扱えない同姓同名と、未完走者が一人という条件を説明します。
IntStream で x から x*n までの n 個の値を生成します。mapToLong だけでは int のオーバーフローを防げない理由と、正・負・ゼロの間隔を確認します。
HashSet で種類を数え、選択上限を達成できることを示します。最大種類数の計算と実際の選択の構築を区別します。
IntStream で配列の同じ位置の要素を掛けて合計します。符号、int の範囲、乗算でオーバーフローする前に型を拡張する理由を説明します。
絶対値と対応する真偽値の符号を IntStream で組み合わせます。相殺、全要素が負の場合、int の範囲、配列の長さが等しいという契約を確認します。