OJ

[BOJ] 10431 줄세우기 (JAVA)

P3PP4 2023. 3. 26. 10:00

https://www.acmicpc.net/problem/10431

 

10431번: 줄세우기

초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1

www.acmicpc.net

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Main {
	
    static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    static StringBuilder sb = new StringBuilder();
    static StringTokenizer st;

    public static void main(String[] args) throws Exception {

        int P = Integer.parseInt(br.readLine());
        for (int T = 1; T <= P; T++) {
            st = new StringTokenizer(br.readLine(), " ");
            st.nextToken();

            ArrayList<Integer> list = new ArrayList<>();
            list.add(0);
            int result = 0;

            for (int i = 1; i <= 20; i++) {
                int now = Integer.parseInt(st.nextToken());
                int index = i;

                while (0 <= --index) {
                    if (list.get(index) < now) {
                        result += list.size() - (index + 1);
                        list.add(index + 1, now);
                        break;
                    }
                }
            }

            sb.append(T).append(" ").append(result).append("\n");
        }

        System.out.print(sb);

    }
	
}