codesafer // 성님 문제 오해하신 거 아님? 회문(palindrome) 같은 거랑 전혀 상관 없어요. asdfdsa 같은 문자열에서 4를 출력하는 게 아니라 asdfasdf 같은 문자열에서 4를 출력하는 문제에요. prefix == suffix여야 돼요. prefix.reverse() == suffix가 아니라.
아 asdfdsa 일 경우 prefix.reverse().equals(suffix)라면 6이겠네. asdfds.
ㅅㅅㅅ(125.128)2015-05-19 20:02
니 말이 맞다~ 바로 지웠는뎅~
codesafer(codesafer)2015-05-19 20:02
참고로 저 문제에서 바로 substring을 비교 안하고 charAt() 부터 비교한 이유는 문자열 길이가 길어지면 오버헤드가 엄청나게 커지기 때문임. 그래서 약간의 최적화로 첫 글자 하나만 먼저 비교한 뒤 같은 경우에만 비교 시작. 이렇게 해서 O(N^2)에서 퍼포먼스를 꽤 최적화시킴. 대부분의 경우 O(N)일 듯.
ㅅㅅㅅ(125.128)2015-05-19 20:05
사실 index 두 개 이용해서 pure O(N)으로 짤 수도 있는데 귀찮~ 저건 pure O(N)이 아니라 O(N)보다는 쬐금 더 큼.
ㅅㅅㅅ(125.128)2015-05-19 20:06
prefix_index = 0, suffix_index = 1로 시작해서 문자가 다르면 prefix_index=0, 문자가 같으면 prefix_index++, suffix_index가 S.length()가 되면 prefix_index 출력하면 될 듯. 이게 pure O(N) algorithm. 생각해 보니 이게 더 코드가 단순하네. 그냥 타자부터 칠 게 아니라 조금 더 생각해 볼 걸 그랬음 ㅋㄷ 귀찮아서...
우와 횽님 대단하시다 전못풀었음 ㅎㅎ
횽아 많이배워가여
codesafer // 성님 문제 오해하신 거 아님? 회문(palindrome) 같은 거랑 전혀 상관 없어요. asdfdsa 같은 문자열에서 4를 출력하는 게 아니라 asdfasdf 같은 문자열에서 4를 출력하는 문제에요. prefix == suffix여야 돼요. prefix.reverse() == suffix가 아니라.
아 자바니깐 prefix.equals(suffix), prefix.reverse().equals(suffix)지만... (자바에 String.reverse가 있었는진 기억이 안나지만 암튼...)
아 asdfdsa 일 경우 prefix.reverse().equals(suffix)라면 6이겠네. asdfds.
니 말이 맞다~ 바로 지웠는뎅~
참고로 저 문제에서 바로 substring을 비교 안하고 charAt() 부터 비교한 이유는 문자열 길이가 길어지면 오버헤드가 엄청나게 커지기 때문임. 그래서 약간의 최적화로 첫 글자 하나만 먼저 비교한 뒤 같은 경우에만 비교 시작. 이렇게 해서 O(N^2)에서 퍼포먼스를 꽤 최적화시킴. 대부분의 경우 O(N)일 듯.
사실 index 두 개 이용해서 pure O(N)으로 짤 수도 있는데 귀찮~ 저건 pure O(N)이 아니라 O(N)보다는 쬐금 더 큼.
prefix_index = 0, suffix_index = 1로 시작해서 문자가 다르면 prefix_index=0, 문자가 같으면 prefix_index++, suffix_index가 S.length()가 되면 prefix_index 출력하면 될 듯. 이게 pure O(N) algorithm. 생각해 보니 이게 더 코드가 단순하네. 그냥 타자부터 칠 게 아니라 조금 더 생각해 볼 걸 그랬음 ㅋㄷ 귀찮아서...
http://autogram.tk/이
중고차 어플리케이션 어떤가요?