cleankid99   2년 전

문자열로 입력받고


문자열 a 의 길이, b의 길이를 구해서 문제를 풀었거든요.


만약 a가 ada   /  b가 aababbc 라면


사실 두 문자열의 길이가 같아지게하면서 최소가 되려면 


a를 뒤쪽에다가 붙였을때 , adaabbc (뒤의 4개는 b와 같아야함) 이어야 하니깐


어차피 뒤의 4개는 비교할 필요 없으니 a문자열 앞의 세개인 ada와 b문자열 앞의 세개만 비교해줘서 그 차이 구하는게 

뒤에넣기 라고 주석달아놓은 부분이구요


앞에 넣기라고 주석달아놓은 부분은

0123456

ada

adabbc 일때, 앞에 넣으려면


0123456

_ _ _ _ ada

adabbc 니까

굳이 a를 뒤로 밀거나 그럴필요없이

문자열 a의 0~2 부분과 b문자열 4~6부분만 비교해주면 되잖아요?

그래서 b[b_len  - a_len + i] 와 a[i] 를 비교한거거든요


테스트케이스랑 제가 생각해낸 예시랑은 답이 잘 나오는데 틀렸다고 바로 나와서 질문드립니다

댓글을 작성하려면 로그인해야 합니다.