import java.util.Scanner;
class Little_elephant
{
public static void main(String args[])
{
Scanner scan = new Scanner(System.in);
int t = scan.nextInt();
int arr[] = new int[100];
int inversions, localInversions;
for(int i = 0; i < t; i++)
{
inversions = 0;
localInversions = 0;
int n = scan.nextInt();
for(int j = 0; j < n; j++)
{
arr[j] = scan.nextInt();
}
for(int j = 0; j < n - 1; j++)
{
for(int k = j + 1; j < n; k++)
{
if(arr[j] > arr[k])
{
inversions++;
}
}
if(arr[j] > arr[j+1])
localInversions++;
}
if(inversions == localInversions)
System.out.println("YES");
else
System.out.println("No");
}
}
}
}
プログラムはコンパイル時にエラーを表示していませんが、23行目で配列インデックスが範囲外になっています。また、エラーは複数のケース、すなわちt> 1を試したときです。誰か助けてください!配列インデックスが2番目のテストケースの例外
「n」の値は何ですか?理想的には、[mcve]を表示する...これは、問題を示すために必要なものよりも複雑であるように見えますが、それを減らしながら答えを見つけることができます。 –
いくつかの入力と期待される出力を含めるか、プログラムのセマンティクスを記述してください。 – Turing85
MCVEが含まれていないため、この質問はトピックとして閉じられる可能性があります。使用する値を含めるようにしてください。変数名の改善にも取り組むべきです。 –