[Programmers-Java] 주사위 고르기
https://school.programmers.co.kr/learn/courses/30/lessons/258709 접근 n은 최대 10이다. n개의 주사위 중 n / 2개를 뽑는 조합 nCn/2 = 252 뽑은 n / 2개의 주사위로 얻을 수 있는 점수의 개수 6n/2 = 7,776 A와 B의 점수를 비교하여 나올 수 있는 승패 결과의 개수 7,7762 = 6n = 60,466,176 252 * 60,466,176 = 약 152억이기 때문에 시간복잡도를 줄여야 한다. A가 몇 번 이기는지를 이분 탐색으로 구하면 252 * 7,776 * log7,776 = 약 25,474,176으로 시간 내에 해결할 수 있다. 풀이 import java.util.*; class Solution { private int ..
2024. 1. 25.