3개의 댓글이 있습니다.
-
-
heekyu -
double precision 문제가 맞네요.
Z만 다른 것처럼 계산하니까 정답 뜨네요.
int Z = (int) (M * 100 / N);input은 이거 넣어보세요.
99999950 57999971이렇게 공식으로 풀 수도 있군요.
하나 배워갑니다.double precision 관련해서는 자주 하는 실수 모음에도 있는데 아래 링크 참조하세요.
http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
10년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
lee890211
RATIO 문제를 총 4가지방법 (3가지 기법) 으로 풀어보았는데요.
1번째 공식화해서 풀기 (다음%까지의 거리를 이용한 공식과 다음%의 수를 이용한 공식 2가지 사용), 2번째 binary search, 3번째는 그냥 brute force. 일단 brute force는 시간초과로 judge가 불가능했고 2번째는 정답으로 나왔습니다. 근데 1번째 방법은 1번공식 2번공식 둘다 오답으로 나오더군요. 테스트코드이용해서 인풋 무작위생성후 3가지 기법들의 정답을 무한대로 생성해봤는데 틀린 아웃풋이 한개도 나오지 않습니다. 이경우 1번째 방법의 문제점을 찾기위해선 어떻게 해야 하나요? judge의 결과로 알고리즘의 문제가 있음은 알겠으나 어디에 문제가있는지는 모르겠네요 ㅠㅠ 아래 코드 첨부합니다. 테스트코드/1번기법-1,2번 공식/2번기법/3번기법 각각 주석달아놨습니다.
10년 전