문제 링크 : https://www.acmicpc.net/problem/10815


상근이가 갖고 있는 숫자가 맞는지 확인하는 문제입니다.


배열 크기는 약 2700만 정도까지 할당이 가능하기 때문에 boolean 배열을 선언해서 해도 됩니다.


하지만 boolean 배열을 쓴다면 BitSet 이라는 자료구조를 사용하면 더 좋습니다.


일반적으로 boolean 배열은 값마다 1Byte씩 차지하는데 BitSet은 1bit만 차지합니다.


무려 7bit를 아끼는 효과가 있죠.


값을 넣을 때 주의할 점은 BitSet 역시 인덱스를 사용하기 때문에 음수 인덱스를 참조하면 에러가 발생합니다.


인덱스가 0부터 시작할 수 있도록 10,000,000 을 더해줍시다!


그리고 입/출력이 많기 때문에 BufferedReader와 BufferedWriter를 사용해주는 것이 좋습니다.


'알고리즘 문제 > 백준' 카테고리의 다른 글

백준 1238번. 파티 (Java)  (0) 2019.03.02
백준 1753번. 최단경로 (Java)  (0) 2019.03.02
백준 2240번. 자두나무 (Java)  (0) 2019.02.15
백준 2473번. 세 용액 (Java)  (0) 2019.02.11
백준 2470번. 두 용액 (Java)  (0) 2019.02.11

+ Recent posts