2016-08-06 5 views
0
나는 현재이 문제에 대한 5 숨겨진 테스트 케이스 (4)를 통과하고 어떤 입력을

Google Challenge Dilemma, 가능한 오류에 대한 통찰력?

빠른 문제 설명하고자

: 당신은 두 개의 입력 문자열을 주어진

, 문자열 청크와 문자열 단어

문자열 "단어"가 몇 번 "청크"에 삽입되었습니다.

"단어"의 모든 인스턴스가 "청크"에서 제거되었을 때 가능한 가장 짧은 문자열을 찾는 작업입니다.

제거하는 동안 더 많은 "단어"인스턴스가 "청크"로 작성된 일 수 있습니다. 제거 후, 사전 편찬-동맹 초기 인 짧은 단어를 반환 더 한 짧은 문자열이있는 경우 "단어"도 "단어"인스턴스

사이 포함, 어디서나 삽입 할 수 있습니다.

이보다 쉬운 실시 예로 이해되어

입력 :
(문자열) "looo ="롤 "

출력
(문자열) 청크 ="lololololo "
(문자열) 단어 goodgooogoogfogoood "
,691 :"(이후 ""=
(문자열) 덩어리

입력을 looo oolo "보다 eariler입니다") "(문자열) 단어 = "끈적 거리는"

출력 :
(문자열) 지금 나는 다음 앞뒤로 반복 단어의 모든 인스턴스를 제거하고 다음의 두 결과를 비교하고있다 "개 사료"

두 번의 반복.

내가 간과하는 경우가 있습니까? 중간에서 먼저 제거해야하는 경우가있을 수 있습니까? 아니면 그 라인을 따라 무언가를 제거 할 수 있습니까?

모든 의견에 감사드립니다.

+2

사용중인 언어는 무엇입니까? 두 태그 java 및 python을 모두 사용합니다. – ganchito55

+0

현재 자바를 사용하고 있습니다. 내가 왜 그 태그를 추가했는지 모르겠다. 나는 실패 할 가능성이있는 테스트 케이스와 특정 구현이 아니라는 추론에 더 관심이있다. –

+0

알고리즘에 굴복하지 않는 문자열이있을 수 있으며, 모든 테스트 케이스를 통과하지 않은 경우보다 철저한 검색 프로세스를 조사하는 것이 좋습니다. FWIW, 필자는 모든 가능한 줄여서 생성 된 문자열을 생성하는 8 줄의 파이썬에서 완전한 재귀 적 검색을 할 수 있으며 필요한 최소한의 문자열을 얻기 위해 한 줄 더 더할 수 있습니다. BTW, 좀 더 테스트 데이터가 있다면, 나는 그것을 볼 수있을 것입니다. :) –

답변

0

잘 모르겠습니다. 하지만 나는 청크의 첫 번째와 마지막 문자를 매치하는 것을 피할 것이다. 다른 모든 것을 대체해야합니다.