11478번 - 서로 다른 부분 문자열의 개수
분명 제대로 된 해시 알고리즘을 구현하여 썼다고 생각하는데 왜 시간초과가 나는걸까요?
어디에서 나는지 알려주시면 정말 감사하겠습니다.
자문자답이네요
해싱할 때 문자열의 길이가 너무 길어서 연산할 때 시간이 오랜걸린 거였네요
혹시 해싱 알고리즘을 어떻게 간략화 시키셨는지 알 수 있을까요 비슷한 문제를 겪고있는데 너무 마음이 힘드네요
부탁드립니다
19번째줄 key값을 생성할때 문자열의 길이만큼 다 더한뒤 key값을 구하고 있습니다.
그러면 현재 입력값이 1000길이의 문자열이 들어올 수가 있는데 이 길이가 너무 길어서 그걸 일일이 다 계산하고 key값을 구해서 시간초과가 떴습니다.
그래서 저는 26번째 while(i != len/4) 이런식으로 전체 길이가 아니라 4, 5 등으로 나누어서 연산하도록 만들었습니다.
댓글을 작성하려면 로그인해야 합니다.
werq20003 1년 전 1
분명 제대로 된 해시 알고리즘을 구현하여 썼다고 생각하는데 왜 시간초과가 나는걸까요?
어디에서 나는지 알려주시면 정말 감사하겠습니다.