[문제]
준규는 숫자 카드 N장을 가지고 있다.
숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -2^62보다 크거나 같고, 2^62보다 작거나 같다.
준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지고 있는 정수를 구하는 프로그램을 작성하시오.
만약, 가장 많이 가지고 있는 정수가 여러 가지라면, 작은 것을 출력한다.
<알고리즘 분류> 정렬
[input]
첫째 줄에 준규가 가지고 있는 숫자 카드의 개수 N (1 ≤ N ≤ 100,000)이 주어진다.
둘째 줄부터 N개 줄에는 숫자 카드에 적혀있는 정수가 주어진다.
[output]
첫째 줄에 준규가 가장 많이 가지고 있는 정수를 출력한다.
[풀이 방법]
-
BufferedReader + BufferedWriter 사용하여 입출력
-
카드의 개수 입력받아 정수형으로 변환 후 변수 N에 저장
-
long타입, 크기가 N인 배열 card 생성하여 카드 정수 입력받아 저장
-
card 배열 정렬
-
count, num 변수 생성하여 count가 가장 많은 정수를 num에 저장하여 num 출력
실패 코드 - 런타임 에러(NumberFormat)
- int형 배열이 아니라 long 타입의 배열 생성하여 문제 해결
성공 코드
'Android ᙏ̤̫͚ > 차근차근 JAVA' 카테고리의 다른 글
[백준 9012번] 괄호 (0) | 2021.02.11 |
---|---|
[백준 10828번] 스택 (0) | 2021.02.11 |
[백준 11004번] K번째 수 (0) | 2021.02.10 |
[백준 10989번] 수 정렬하기 3 (0) | 2021.02.10 |
[백준 10825번] 국영수 (0) | 2021.02.10 |