求求了帮下我
查看原帖
求求了帮下我
1096827
AC_or_suicide楼主2023/9/22 15:48

大佬们,帮我看看代码哪里有问题,样例通过了,但是提交三个WA和两个超时...

package LUOgu;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int size = sc.nextInt();
        int number = sc.nextInt();
        int arr[] = new int[size];
        for(int i = 0;i <= arr.length - 1;i++) {
        	arr[i] = sc.nextInt();
        }
        method(arr,0,arr.length - 1,number);
        sc.close();
    }
    
    public static void method(int arr[],int left,int right,int number1) {
    	if(left >= right) {
    		System.out.print(arr[left]);
    		return;
    	}
    	int number = arr[left];
    	int i = left;
    	int j = right;
    	while(i < j) {
    		while(i < j && arr[j] > number) {
    			j--;
    		}
    		while(i < j && arr[i] <= number) {
    			i++;
    		}
    		int count = arr[i];
    		arr[i] = arr[j];
    		arr[j] = count;
    	}
    	arr[left] = arr[i];
    	arr[i] = number;
    	if(i > number1) {
    		method(arr, left, i - 1, number1);
    	}else if(i < number1) {
    		number1 = number1 - i - 1;
    		method(arr, i + 1, right, number1);
    	}else {
    		System.out.print(arr[i]);
    		return;
    	}
    }
}

2023/9/22 15:48
加载中...