백준 1072번 게임
< 백준 1072번 게임 - 마포 코딩박 >
사용한 알고리즘: 수학
현재까지의 게임 횟수와 이긴 횟수 가 주어지고, 앞으로는 모두 이긴다고 가정했을 때, 몇판을 더 해야 승률이 증가하는지 구하는 문제였습니다.
풀이는 다음과 같습니다.
(1)
X: 전체판수, Y: 이긴횟수, Z: 승률이라고 하면, Z = 100*(Y/X) 입니다.
승률이 Z+1 이 되기 위한 추가 판수를 K 라 하면, Z+1 = 100*(Y+K/X+K) 입니다.
따라서 K = ((Z+1)*X - 100*Y)/(99-Z) 입니다.
주의할 점은, Z를 계산할 때 Y/X*100 이라고 하면 안된고 100*Y/X라고 해야합니다.
(정확한 이유는... 모르겠습니다.)
또한 Z 가 이미 99 프로 이상이면, 100프로를 만들기는 불가합니다.
사용한 알고리즘: 수학
현재까지의 게임 횟수와 이긴 횟수 가 주어지고, 앞으로는 모두 이긴다고 가정했을 때, 몇판을 더 해야 승률이 증가하는지 구하는 문제였습니다.
풀이는 다음과 같습니다.
(1)
X: 전체판수, Y: 이긴횟수, Z: 승률이라고 하면, Z = 100*(Y/X) 입니다.
승률이 Z+1 이 되기 위한 추가 판수를 K 라 하면, Z+1 = 100*(Y+K/X+K) 입니다.
따라서 K = ((Z+1)*X - 100*Y)/(99-Z) 입니다.
주의할 점은, Z를 계산할 때 Y/X*100 이라고 하면 안된고 100*Y/X라고 해야합니다.
(정확한 이유는... 모르겠습니다.)
또한 Z 가 이미 99 프로 이상이면, 100프로를 만들기는 불가합니다.
댓글
댓글 쓰기
긴 글 읽어주셔서 감사합니다.
궁금한게 있으시다면 댓글 달아주세요!