Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용하여 문자열을 교대로 병합하는 프로그램

<시간/>

두 개의 문자열 s와 t가 있다고 가정합니다. s에서 시작하여 교대로 문자를 추가하여 병합해야 합니다. s와 t의 길이가 같지 않으면 병합된 문자열의 끝에 추가 문자를 추가합니다.

따라서 입력이 s ="major" t ="general"과 같으면 t가 s보다 크므로 출력은 "mgaejnoerral"이 되므로 끝에 "ral"을 추가했습니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 나는 :=j :=0

  • 결과 :=빈 문자열

  • 동안 i

    • 결과 :=결과 연결 s[i] 연결 t[j]

    • 나는 :=나는 + 1

    • j :=j + 1

  • 내가

    • 결과 :=결과 연결 s[i]

    • 나는 :=나는 + 1

  • 동안 j

    • 결과 :=결과 연결 t[j]

    • j :=j + 1

  • 반환 결과

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

def solve(s, t):
   i = j = 0
   result = ""
   while i < len(s) and j < len(t):
      result += s[i] + t[j]
      i+=1
      j+=1
   while i < len(s):
      result += s[i]
      i += 1
   while j < len(t):
      result += t[j]
      j += 1
   return result
s = "major"
t = "general"
print(solve(s, t))

입력

"major", "general"

출력

mgaejnoerral