1072번 - 게임
EOF까지 입력받도록 했고
시간초과 날까봐 이분탐색 했고
처음 확률이 99퍼 이상이면 -1출력하도록 까지 했는데
계속틀렸다고만 하니 미칠지경입니다
확률 구할때 버린다고 했는데 y/x구할때 (double)로 형변환 하고 다시 (long long)으로 형변환 하면
어치피 소수점 부분은 버려지는거 아닌가요?
좀 도와주세요..ㅠㅠ
1000000000 980000000
을 넣으면 나오는 답으로 승률을 계산해봐도 여전히 98% 네요
r을 얼마로 잡으신거죠? 바뀐 소스도 좀 볼 수 있을까요?
x가 최대 10억이라 r 20억으로 잡았습니다.
아무리 봐도 잘못된 게 없어서
double 이랑 long long 형변환 없애고
(y * 100) / x
((y + mid) * 100)/(x + mid)
로 계산하니 통과되네요.
형변환 시에 뭔가 문제가 있나봅니다.
double 형변환이 int 범위 내에서만 가능한가?
ㅋㅋㅋㅋㅋㅋㅋ감사합니다
참...쉬우면서도 어렵네요 이거...
댓글을 작성하려면 로그인해야 합니다.
juhongkim2 7년 전
EOF까지 입력받도록 했고
시간초과 날까봐 이분탐색 했고
처음 확률이 99퍼 이상이면 -1출력하도록 까지 했는데
계속틀렸다고만 하니 미칠지경입니다
확률 구할때 버린다고 했는데 y/x구할때 (double)로 형변환 하고 다시 (long long)으로 형변환 하면
어치피 소수점 부분은 버려지는거 아닌가요?
좀 도와주세요..ㅠㅠ