우리는 가운데에서 긴 문자열을 분리하고 두 반쪽이 같은지 여부를 확인할 수 있습니다. 입력 문자열은 홀수 또는 짝수의 문자를 가질 수 있습니다. 짝수개의 문자가 있는 경우 길이의 절반을 취하여 두 개의 절반을 나눕니다. 그러나 문자 수가 홀수이면 가장 중간에 있는 문자를 무시하고 나머지 두 반쪽을 비교합니다.
아래 프로그램에서 위의 논리로 입력 문자열의 두 부분을 만든 다음
예시
from collections import Counter def comparehalves(input_string): str_len = len(input_string) # If number of characyes is odd # ignore the middle character if (str_len % 2 != 0): left = input_string[0:int(str_len / 2)] right = input_string[(int(str_len / 2)) + 1:] else: left = input_string[0:int(str_len / 2)] right = input_string[int(str_len / 2):] # Convert the halves into lists # and sort them l1 = list(left) l1.sort() l2 = list(right) l2.sort() if l1 == l2: print ("Same character in both halves") else: print ("Both halves are different ") in_string = input("Enter String: ") comparehalves(in_string)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
# Run1 Enter String: Tutorials Both halves are different # Run2 Enter String: TutTut Same character in both halves