19953

Jul 22, 22

영재의 산책

문제 설명

만약 t초에 v의 속력으로 걷는다면 1초 동안 v의 속력으로 걷는다. 그리고 t+1초가 된 순간 오른쪽으로 90도 회전한 후 (v×m)%10의 속력으로 걷는다. 초기 속력 v0, m, 총 산책 시간 t가 주어졌을 때, 최종 위치를 구하는 문제

문제 풀이

t초를 걸어야 하고, (이전 속도m)%10가 다음 속도이다. 따라서 많아야 10번 이내에 같은 속도가 나오게 된다. 그리고 4초마다 같은 방향으로 걷기 때문에 구해놓은 서로 다른 속도 개수4(= num)를 해서, 그만큼 걸었을 때의 서로 다른 속도들을 구해 놓는다. (같은 속도가 한번 나오게 되면 그 다음부턴 반복되기 때문에) 그리고 나서, dx(t/num), dy(t/num)을 해 준다. dx와 dy는 num초 동안 걸으면 얼마나 가는지를 나타내기 때문에, t초를 num으로 나눈 값을 dx와 dy값을 하면 마지막 t%num초 전까지의 거리가 구해진다. 그리고 나서는 마지막 t%num초를 직접 더해주면 끝이다.