mongsiry013   2년 전

채점 92%에서 틀렸습니다가 뜨네요 ㅠㅠ

알고리즘은 점프 0번한경우부터 1999번한 경우까지 최소 시간을 구하는건데요.

소수점자리까지 내는 문제 보면 이게 부동 소수점 문제인지 빠진 케이스가 있어서 그런건지 판별하기가 힘들더군요

혹시 C로 푸신분들은 double과 int만으로 통과하셨나요?

아래 파이썬 코드 알고리즘은 다음과 같아요.

점프를 안한 경우 걸리는 시간 : (0,0) 에서 (X,Y)까지의 거리

점프를 1번 한 경우 걸리는 시간 : (X,Y)에서 (0,0) 방향으로 점프를 한 번 한 후 그 자리에서 (0,0)까지 걸어가는 시간 계산

점프를 n번(n>=2) 한 후 가는 시간 :  

                    1. (X,Y)에서 (0,0) 까지의 거리가 D*n보다 큰 경우(D는 한번 점프 할 때 갈 수 있는 거리) :

                            절대 점프만으로 집까지 도착못하므로, 걸어가는 시간을 합해야함. (X,Y)에서 (0,0)방향을 향해 점프 한 후 걸어가는 시간 계산.

                    2. 그렇지 않은 경우  :

                        점프만으로 (X,Y)에서 (0,0)까지 갈 수 있는 방법이 존재. 걸리는 시간은 T*n (T는 한번 점프 하는데 걸리는 시간)

위의 모든 경우의 값 중 최소값을 답으로 출력하는 방법입니다.

mongsiry013   2년 전

그림과 같이 길이 13을 이동하는데 점프 3번으로 이동 할 수가 없는건가요? 점프 거리가 5고 한번 점프하는데 시간이 1 걸리니 세번 점프해서 아래 그림처럼 갈 수 있다고 생각하여 답을 3출력하게 한거예요. 아래와 같은 길이를 갖는 사각형이 만들어 질 수 없는 건가요? 3df812edaacff7ad2d4665b9203bad2c.png

yukariko   2년 전

제가 적었다가 잘못생각했다 싶어서 지웠어요 ㅎㅎ 그런데 사각형으로 생각하셨네요

저는 13 10 5 의 삼각형으로 생각해서 3번이 가능하다고 판단했는데

appa   2년 전

입력이 EOF 일 때까지 주어지는 거 제대로 처리하신 거 맞나요?

'코딩'에서 예제를 넣으니까 6.0000000~ 만 나오던데

mongsiry013   2년 전

아하 반복문을 써서 입력을 여러번 받아 처리해야 되는거였군요

홍준님 감사해요!

문제에서 입력과 출력에는 첫째줄에 대한 얘기밖에 없어서 1번만 입력받고 출력하면 되는줄 알았어요

다른 문제에는 보통 언급되어있던데.. 흑 ㅠㅠ

덕분에 편히 잠을 잘 수 있을 것 같아요!

숏코딩하구 하구 자야겠다 ㅎ

댓글을 작성하려면 로그인해야 합니다.