何回かに分けて、アルゴリズムの効率的な解法パターンをupしていこうと思います。 アルゴリズムは、力技でも解けるのですが、データ量が増えた時に、使い物にならなかったら悲しいですよね。 1回目は、最頻度カウンターパターン(勝手に命名)です。
演習6: ループ不変条件を $${0 \le i \le n+2}$$ に変えなさい。ループはまだ検証されますか?ループ後のアサーション $${i == n}$$ はまだ検証されますか? method m(n: nat) { var i: int:= 0; while i < n invariant 0 <= i <= n // これを変えなさい。なにが起きますか? { i := i + 1; } ...
一部の結果でアクセス不可の可能性があるため、非表示になっています。
アクセス不可の結果を表示する