본문 바로가기

Algorithm/CodeUp

[CodeUp_Java] Q1805 : 비밀 전화번호

반응형

안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1805 : 비밀 전화번호 (자바, JAVA)입니다.

Intro

Question

문제 설명

입력

첫째 줄에 입체기동장치의 갯수 n이 입력된다. (1 <= n <= 100)
둘째 줄부터 n+1째 줄까지 각 줄에 입체기동장치의 식별번호 a와 가스 보유량 b가 주어진다.
a는 중복 될 수 없지만 b는 중복될 수 있다. (1 <= a <= 100), (0 <= b <= 10,000)

출력

첫째 줄부터 n번째 줄까지 각 줄에 식별번호를 오름차순으로 정렬해 가스 보유량과 같이 출력한다.

예시

  • 입력 :
    3
    2 10
    3 20
    1 30
  • 출력 :
    1 30
    2 10
    3 20

Solution (풀이)

  • 풀이 : 메모리 14764, 시간 : 131
class machine {
     int no;
     int gas;
}

public class Answer1 {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int count = Integer.parseInt(br.readLine());
        StringTokenizer st;

        machine[] arr = new machine[count];

        for(int i=0; i<count; i++) {
            st = new StringTokenizer(br.readLine(), " ");
            machine arr1 = new machine();
            arr1.no = Integer.parseInt(st.nextToken());
            arr1.gas = Integer.parseInt(st.nextToken());
            arr[i] = arr1;
        }

        for(int j = 0; j < arr.length -1; j++) {
            for(int i = 0; i < arr.length -1; i++) {
                if(arr[i].no > arr[i+1].no) {
                    machine temp = arr[i];
                    arr[i] = arr[i+1];
                    arr[i+1] = temp;
                }
            }
        }

        for(int i=0; i<arr.length; i++) {
            System.out.printf("%d %d\n", arr[i].no, arr[i].gas);
        }
    }

}

Ranking(순위)

반응형