間違った答えがかえって苦痛を与えるというケースは常にあります。 TLE(制限時間超過) 前者と同様に、どのテスト ケースが失敗しているのかを確認できませんでしたが、後者では、N (合計命令) のどの値に対して TLE が表示されるかを推定できます。
では、その時はどうすればいいのでしょうか?
| 質問をよく読んでください: | 初めて WA(間違った答え) を受け取ったときは、必ずすべての単語を読み、質問を完全に理解していることを確認してください。ほとんどの場合、質問全体の基礎となる特定の部分をスキップしているからです。
| 入力/出力の形式を確認します。 | プログラマーの多くは、質問の要件に応じて改行や空白を追加することを忘れます。したがって、オンライン審査員にソリューションを提出する前に、次のようなオンラインコンパイラでプログラムを実行してみてください。 code.geeksforgeeks.org または イデオン 。
| プログラムのアルゴリズム/ロジックを確認します。 | すべてのテスト ケースをカバーする正しいロジックを使用しているかどうかを確認してください。
| コーナーテストケース | 可能であれば、0 1 2 や N などの境界テスト ケースでコードを実行してみてください。
愚かな間違いを避ける
| 変数を初期化します: | テスト ケース T ごとに変数配列を再初期化するのを忘れることがあります。例:
- count変数の値を0に初期化します。
- DP[] 配列のすべての値を 0 または -1 に設定します。
| データ型オーバーフロー: | N の値やその他の入力に与えられた制約を常に念頭に置き、オーバーフローを避けるために、C/C++ の int long long や JAVA の int long などの正しいデータ型の範囲内でプログラムを作成してください。
| モジュールの問題: | モジュラー算術 (答え % MOD) のような質問では、答えが負の値を取得しないことを常に確認してください。そのため、すべての可能性をカバーする (答え + MOD) % MOD を使用するようにしてください。
デバッグ