티스토리 뷰

 

 

10814번: 나이순 정렬

온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을

www.acmicpc.net

 

풀이

  • 최신순으로 끼워넣으려니 복잡해서 단순하게 생각했다.
  • Queue<String> members[201] 배열을 선언하고 나이만 뽑아서 member[age]에 쏙쏙 넣은 후 마지막에 큐를 돌리면서 출력하면 끝
  • 실버 문제들은 단순하게 푸는게 최고인 것 같다.

 

 

 

코드

import java.io.*;
import java.util.*;
public class Main {
static int N;
static Queue<String>[] members;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
N = Integer.parseInt(br.readLine());
members = new LinkedList[201];
for (int i = 1; i <= 200; i++)
members[i] = new LinkedList<>();
for (int i = 0; i < N; i++) {
String str = br.readLine();
st = new StringTokenizer(str);
int age = Integer.parseInt(st.nextToken());
members[age].offer(str);
}
for (int i = 1; i <= 200; i++) {
while(!members[i].isEmpty())
bw.write(members[i].poll() + "\n");
}
br.close();
bw.close();
}
}

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함