솜이의 데브로그

백준 5052번 ) 전화번호 목록 (java) 본문

Algorithm/백준

백준 5052번 ) 전화번호 목록 (java)

somsoming 2021. 9. 27. 00:34

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

 

5052번: 전화번호 목록

첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가

www.acmicpc.net

 

문제

 

 

풀이

import java.io.*;
import java.util.*;


public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int t = Integer.parseInt(br.readLine());
		
		for(int i=0; i<t; i++) {
			int n = Integer.parseInt(br.readLine());
			String[] num = new String[n];
			boolean result = true;
			
			for(int j=0; j<n; j++) {
				num[j] = br.readLine();
			}
			Arrays.sort(num);
			
			for(int j=1; j<n; j++) {
				if(num[j].startsWith(num[j-1])) {
					result = false;
					break;
				}
			}
			
			if(result) System.out.println("YES");
			else System.out.println("NO");
		}
		
	}
}

 

 

 

궁금한점

 

이클립스에서 콘솔에 하나하나 입력하면 잘 출력이 되는데, 백준에서 input 긁어와서 바로 복붙하면 처음 답만 출력된다. 왜일까? 내가 system.out 으로 출력해서 그런가? bufferwriter로 해서 하면 괜찮은것 같던데.

원인을 찾아봐야지

 

 

느낀점

자바는 sort 기능이나.. startswith 이런 메서드 진짜 편해서 좋은것같다. 대신 메서드를 많이 알아둬야할듯ㅋㅎ

'Algorithm > 백준' 카테고리의 다른 글

백준 4358번 ) 생태학 (java)  (0) 2021.10.08
백준 5525번 ) IOIOI (java)  (0) 2021.09.30
11656번 ) 접미사 배열 (java)  (0) 2021.09.26
4949번 ) 균형잡힌 세상 (java)  (0) 2021.09.17
2941번 ) 크로아티아 알파벳 (java)  (0) 2021.09.17