201703-2 學生排隊

使用list.add(index, Object)來實現對指定對象的移動,移動前記得從list中remove該對象即可

奉上java滿分代碼

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        int n = Integer.parseInt(scanner.nextLine());
        int k = Integer.parseInt(scanner.nextLine());
        List<Integer> numbers = new ArrayList<>();
        for(int i = 0; i <= n; i++){
            numbers.add(i);
        }
        for(int i = 0; i < k; i++){
            String[] line = scanner.nextLine().split(" ");
            Integer number = Integer.parseInt(line[0]);
            int move = Integer.parseInt(line[1]);
            int index = numbers.indexOf(number) + move;
            numbers.remove(number);
            numbers.add(index, number);
        }
        scanner.close();

        for(int i = 1; i <= n; i++){
            System.out.print(numbers.get(i) + " ");
        }
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章