simm4256   4년 전

정말 단순무식하게 풀었습니다.


1초마다 반복문을 돌려서

현재 건설중인 건물의 남은 시간을 1초씩 줄여가면서

w 건물이 완성되면 그 때의 시간을 출력하도록 짰습니다.


n, D의 최대 범위가 1000이다 보니 가장 오래 걸리는 방법이라고 해봐야 10^6번이라

10^6번의 반복문만 돌아가면 정답이 나올 수밖에 없더라고요.


n이나 D의 최대범위를 늘려야하지 않을까 생각합니다.

물론 이 코드를 기반으로 시간을 줄이는 건 어렵지 않습니다만..

이런 소스로 그저 맞혔다고 좋아하고 넘어가면 알고리즘 공부가 안되니까요...

hoon222y   4년 전

열심히 공부하시는 모습 보기 좋네요 . 그렇다면 알고리즘 공부하실때 문제를 해결한 후 다른 분들의 시간복잡도나, 코드를 보면서 다시한번 풀어보시는것도 좋으실겁니다. 

혼자 풀어본 방식보다 더 좋고 신기한 풀이들을 보면서 공부가 더 되실겁니다 ㅎㅎ 그런의미로 위상정렬에 대해 알아보시구 위상정렬을 이용한 풀이를 생각해보시는것도 좋을거라고 생각합니당 ㅎㅎ 

simm4256   4년 전

맞는 말씀이십니다.

근데 전 애초에 저런 코드가 AC가 뜨면 안되도록 문제 조건을 설정해야 한다고 생각해서 요청드린거에요.

n의 증가는 전체적으로 풀이 시간의 증가를 유발하겠지만, D의 증가는 저같은 풀이를 사용하지 않았다면 거의 영향이 없을 것 같아서요.

hoon222y   4년 전

아하 제가 말뜻을 잘못받아들였나보네요 ㅠㅠ 죄송합니당 그리구 좋은 제안이신거같아요 ㅎㅎ 

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