20, 28, 31번 비교에서 문제에서 사용되는 범위를 넘어가는 인덱스를 참조하고 있습니다.
1316번 - 그룹 단어 체커
20, 28, 31번 비교에서 문제에서 사용되는 범위를 넘어가는 인덱스를 참조하고 있습니다.
저부분을 고쳤는데도 실패했다고 나왔는데요.
35~43번 줄의 for문 로직은 완전히 잘못되었습니다. for문 안에 있는 break는 for문을 탈출 시킵니다.
input :
1
asdfsd
c = { a s d f s d }
정렬 후
c = { a d d f s s }
for문 진입 후,
c[1] = d, c[0] = a 이므로 total++ 후 반복문 탈출
output
1
answer
0
이해가 됐는데 bool 변수를 만들었습니다. 이렇게 했는데도 틀렸다고 나왔는데 혹시 for문 때문에 그런가요?
input
1
asdfad
output
1
answer
0
c = { a s d f a d }
정렬 후
c = { a a d d f s }
flag = false에서 시작
c[1] = a, c[0] = a 검사 : flag = false
c[2] = d, c[1] = a 검사 : flag = true
..
c[5] = s, c[4] = f 검사 : flag = true
flag = true 이므로 total값 증가
flag가 제일 마지막 검사값만 가지고 판단하고 있습니다.
for문 안에 flag 변수를 true로 초기화 하시고
c[k]와 c[k-1]이 다르다면 flag 값 변경 없이 그대로 진행, 같다면 flag = false로 만들고 탈출하셔야 정상적으로 동작하게 됩니다.
감사합니다. 잘 풀었습니다.
댓글을 작성하려면 로그인해야 합니다.
hazirahmuslim 2년 전
예제 있는 코드는 다 맞게 나왔는데 결과는 틀렸다고 나와요. 그런데 반례를 못 찾겠어요. 코드 틀린점이나 반례를 알려주실 수 있나요?