[ad_1]
サイズ N の整数配列 Arr と数値 X. 配列内の指定された X のすべてのインデックスを出力し、それ以外の場合は -1 を出力します。
1 から始まるインデックスで出力します。
入力
5 6
2 6 3 6 6
出力:
2 4 5
私が試したこと:
solution int flag =0; int index =-1; for(int i=0; i<N; i++){ if(arr[i]==X){ flag =1; index = i+1; if(flag==1){ System.out.print(index + " "); } else{ System.out.print("-1"); } }
解決策 1
フラグのステータスをクリアすることはありません。一度設定すると、アプリケーションの実行中は設定されたままになります…印刷はすべてループ内にあるため、これは重要なことではないでしょうか?
デバッガーを使用していれば、数分でコードのどこが間違っているかがわかります。ここで質問するよりもはるかに迅速です。
使用方法はコンパイラ システムによって異なりますが、IDE と「デバッガ」の名前を Google で検索すると、必要な情報が得られます。 関数の最初の行にブレークポイントを置き、デバッガーでコードを実行します。 次に、コードとデータを見て、何が起こるべきかを手動で解決します。 次に、各行を 1 ステップ実行して、予想どおりの動作を確認します。 そうでない場合は、問題が発生したときであり、後戻りして (またはもう一度実行して詳しく調べて) 原因を突き止めることができます。
[ad_2]
コメント