2941번 - 크로아티아 알파벳
input 받은 값에서 한 칸씩 검사해나가는 코드입니다.
먼저 'dz=' 가 있는지 3칸을 검사하고 없으면 elif문을 통해 2칸을 검색합니다.
그래도 없으면 i가 ++ 되며 다음 칸으로 이동합니다.
만약 'dz='가 있으면 z=는 검사할 필요가 없기에 바로 i는 '=' 다음 문자열을 검색 할 수 있도록 3을 더해줍니다.
elif도 마찬가지로 2를 더해줍니다.
마지막으로
b = ("".join(b))c = len(one) - len(b) + num
이 코드를 통해 검사를 통해 찾은 ['c=', 'c-', 'd-', 's=', 'z=', 'lj', 'nj', 'dz='] 를 다 지우면
나머지 문자의 갯수가 나오므로 그것을 더해 줍니다.
예제나 이전 질문을 보며 반례를 다 넣어 봤으나... 찾지 못 했습니다.
어디가 문제일까요..?
and a[i] != '=' and a[i] != '-' 이 코드가 없을시에
cc==을 넣을 경우 b에 c=이 아니라 c== 이 append 되더라고요... 이 이유를 모르겠어서 그냥
and a[i] != '=' and a[i] != '-'를 집어 넣으니
cc== 을 입력해봐도 잘 작동 합니다.
그런데 문제는 틀렸다고 나옵니다.
반례 : dz
11번 라인에서 cro[7]은 ['dz=']가 아니라 'dz='라서 문제가 됩니다.
아 그러니까 cro[7] 이렇게 하면 리스트가 아니라 문자열이 나와서
'abc' in 'abcd' 하면 true가 되는 것과 같군요..! 감사합니다.
댓글을 작성하려면 로그인해야 합니다.
whiteleo100 3년 전
input 받은 값에서 한 칸씩 검사해나가는 코드입니다.
먼저 'dz=' 가 있는지 3칸을 검사하고 없으면 elif문을 통해 2칸을 검색합니다.
그래도 없으면 i가 ++ 되며 다음 칸으로 이동합니다.
만약 'dz='가 있으면 z=는 검사할 필요가 없기에 바로 i는 '=' 다음 문자열을 검색 할 수 있도록 3을 더해줍니다.
elif도 마찬가지로 2를 더해줍니다.
마지막으로
b = ("".join(b))
c = len(one) - len(b) + num
이 코드를 통해 검사를 통해 찾은 ['c=', 'c-', 'd-', 's=', 'z=', 'lj', 'nj', 'dz='] 를 다 지우면
나머지 문자의 갯수가 나오므로 그것을 더해 줍니다.
예제나 이전 질문을 보며 반례를 다 넣어 봤으나... 찾지 못 했습니다.
어디가 문제일까요..?
and a[i] != '=' and a[i] != '-' 이 코드가 없을시에
cc==을 넣을 경우 b에 c=이 아니라 c== 이 append 되더라고요... 이 이유를 모르겠어서 그냥
and a[i] != '=' and a[i] != '-'를 집어 넣으니
cc== 을 입력해봐도 잘 작동 합니다.
그런데 문제는 틀렸다고 나옵니다.