본문 바로가기

Android ᙏ̤̫͚/차근차근 JAVA

[백준 11652번] 카드

 

BOJ11652

 

11652번: 카드

준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지

www.acmicpc.net

 

[문제]

준규는 숫자 카드 N장을 가지고 있다.

  숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -2^62보다 크거나 같고, 2^62보다 작거나 같다.

준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지고 있는 정수를 구하는 프로그램을 작성하시오.

  만약, 가장 많이 가지고 있는 정수가 여러 가지라면, 작은 것을 출력한다.

 

<알고리즘 분류> 정렬

 

[input]

첫째 줄에 준규가 가지고 있는 숫자 카드의 개수 N (1 ≤ N ≤ 100,000)이 주어진다.

둘째 줄부터 N개 줄에는 숫자 카드에 적혀있는 정수가 주어진다.

[output]

첫째 줄에 준규가 가장 많이 가지고 있는 정수를 출력한다.

 


 

 


 

[풀이 방법]

  1. BufferedReader + BufferedWriter 사용하여 입출력

  2. 카드의 개수 입력받아 정수형으로 변환 후 변수 N에 저장

  3. long타입, 크기가 N인 배열 card 생성하여 카드 정수 입력받아 저장

  4. card 배열 정렬

  5. 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