一个长度为n的整型数组,初始全0,经过m次修改,第i次修改会将[l,r]区间内的数字全部改为i,问修改方案,可能有多种,输出一种即可。
输入:
5 4
1 2 4 2 3
输出
1 5
2 4
5 5
3 3
其中n为5,m为4,最终数组为[1,2,4,2,3],要求输出每一次修改的区间
我写的代码,通过率20%,运行超时,不知道哪里有错,菜鸟求教,谢谢!
import java.util.Scanner;
import java.lang.Math;
public class Main {
public static void main(String []args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
int[] list = new int[n];
for(int i=0;i<n;i++){
list[i] = in.nextInt();
}
for(int k=1;k<=m;k++){
int left = n-1;
int right = 0;
for(int j=0;j<n;j++){
if(list[j]==k){
left = Math.min(left, j);
right = Math.max(right, j);
}
}
System.out.println((left+1)+" "+(right+1));
}
}
}