krocd   2년 전

주어진 채널에서 고장난 버튼을 제외한 + 방향에서 가장가까운 채널을 찾고 

반대로 고장난 버튼을 제외한 - 방향의 가장 가까운 채널을 찾아

원래 가려는 구한 채널과 + 방향 채널과 - 방향의 채널 중 가장가까운 채널의 차 를 원래채널 길이만큼 더해 정답을 찾으려 했습니다

하지만 시간초과에서 자꾸 걸리고 있습니다 고수님들 도와주시면 정말 감사드리겠습니다 ㅜㅜ 

이거 해결하고 집가고 싶습니다

314programs   2년 전

21-22라인이랑 24-25라인이랑 비슷한경우엔 abs()로 줄일수있어요.

- 나 + 방향으로 찾는겄보다, 만들수있는 가장 가까운 숫자를 찾고, 그다음 abs()로  + 나 - 버튼을 얼마나 많이 눌러야되는지 찾는게 더 빠를겄갔네요. (이거 1000000 까지 루프돌려서 찾아도 시간초과가 않남)

그리고 100에서 부터 얼마나 많이 + 나 - 버튼을 눌러야되는지 찾고, min()으로 비교를 하면 되요.

krocd   2년 전

말씀대로 while 문하나로 가장가까운 곳을 찾고 abs 를 활용하여 계산하였습니다

당연하게도 체점시  버튼이 전부 고장나거나 하나도 고장안날때 를 꼼꼼하게 처리 않해서 틀렸지만 abs를 활용하니 금방 해결했습니다

덕분에 시간 문제 예외 문제까지 다 해결하고 맞았습니다 정말 감사합니다

314programs 감사합니다

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