leehan0617   4년 전

제가 알고리즘을 깊게 알지못해서 다른분들과 약간 푸는게 다른거같은데..

첫번쨰로 두명의 CD의 갯수를 받아서

첫번째 사람의 CD 번호를 모두 map에 담고

두번째 사람의 CD를 입력받을때 map에 있으면 같은CD라고 판단하고 카운팅을해서 출력하는 방식으로 짯거든요..

이방식이 혹시 잘못된방식인가요?? 그리고 마지막에 0 0을 받으라해서 한번 더 받긴했지만.. 저게 문제푸는데 무슨 실마리인지는 아직도 감을 못잡겠습니다.. 

답변부탁드려요.

chogahui05   4년 전

TC수가 여러개고요.

숫자가 매우 많아지는 경우에는 가비지 콜렉터 때문에 시간초과가 날 거 같네요.

leehan0617   4년 전

감사합니다.. TC를 여러번받게 고치고 하니까 시간초과가 나네요.. 혹시 가비지 콜렉터 때문에 시간초과가 날거라는걸 어떤부분을 보고 예상하신건가요..?

저는 map을 사용해서 시간상으로는 문제없다고 생각했었거든요.. 후 

ho94949   4년 전

1. Hashmap은 시간복잡도가 최대 O(n)입니다. 반례데이터가 들어 있을 수 있고, 제가 데이터를 만들 때는 set이나 map 문제에 대해서 C++/Java Anti-Hashset 데이터를 넣습니다.

2. 자료구조의 상수가 큽니다. 항상 O(1)이 나오고, 간단한 구현으로 문제를 해결할 수 있으므로, 문제의 제한 조건을 자세히 읽어보시기 바랍니다.

leehan0617   4년 전

감사합니다 ^.^

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