codility_lesson04_4)MaxCounters

4) MaxCounters (18.05.26) - 수정필요!!


이번에는 첫번째 시도로 Correctness가 100이 나왔다.
근데 performance가 40.. 두번째 시도로 하나 더 맞아서 60이 됐는데 더 어떻게 해야할지...




일단 첫번째에는 performance에 밑에 세개가 다 TIMEOUT ERROR 였는데 한번 고쳐서 large_random1은 해결!
large_random2도 시간은 줄었는데 해결은 못했다. 어떻게 더 수정해야할까



처음에는 N보다 큰 수가 나왔을 때 max 값으로 배열을 set 하기 위해서 max 값을 구하는 함수를 밖에 따로 구현했다.
이때는 복잡도가 N*M 으로 나왔다. 답은 N+M.


함수를 없애고 값을 넣을 때 max 값을 기억해놨다가 set 하도록 수정했다.
근데 수정하면서 고민. 이게 더 좋은게 맞나...??



* Arrays.fill(int[] a, int value) -> a 배열의 모든 요소를 value 값으로 설정한다.

댓글

이 블로그의 인기 게시물