맞추고서 쓰는 자문자답
- 네, printf("%.3lf\n") 쓰는 거 맞습니다.
- 0.001 미만입니다. 0.001% 아닙니다.
- long long 필요없고, int와 double 만으로 풀 수 있습니다.
소수점 정확도 문제가 아니라 기본적인 아이디어에서 틀린 부분이 있었던게 원인이었습니다.
1381번 - 요구르트의 유통기한
맞추고서 쓰는 자문자답
소수점 정확도 문제가 아니라 기본적인 아이디어에서 틀린 부분이 있었던게 원인이었습니다.
댓글을 작성하려면 로그인해야 합니다.
BothEarRim 3년 전
납치될 %확률을 “.3lf"의 형태로 출력한다.
→ 소수점 4째자리에서 반올림하면 된다고 이해하면 될까요? 'GG' 출력조건 역시 4째자리에서 반올림하는 거라고 나와있으니 아마도 printf("%.3lf\n") 을 쓰면 맞을 것 같은데 혹시 소수점 4째자리부터는 자르고 내림 처리해서 3째자리까지만 출력하는 것인지 ... 애매하네요.
반올림해서 0.001미만 이라면 “GG”를 출력한다.
→ 1% = 0.01 입니다. 여기서 0.001미만이라고 쓰여있는 것은 엄밀히 0.001 미만인지, 0.001% 미만을 의미하는 것인지 헷갈립니다.
각각의 경우 전부 바꿔가며 출력해도 다 틀리는 걸 보면 제 코드의 문제일 거라 생각은 드는데, 왜 틀리는지 모르겠습니다ㅠ
정확도를 위해서 최대한 long long 으로 분자, 분모를 각각 구한다음 둘을 나눠줄 때부터 double로 하는게 좋을까요? 근데 이렇게 했는데도 틀렸습니다...
기본 솔루션은 어렵지 않으나 소수처리 때문에 골치입니다.
난이도가 정녕 실버3 인가요.. 레드코더분들도 여러번 틀리고서 맞거나 한게 보이는데;;