길이가 n인 두 개의 문자열 s와 t가 있다고 가정합니다. s에서 한 문자를 가져오고 t에서 다른 문자를 가져와서 바꿀 수 있습니다. 우리는 무제한 스왑을 할 수 있습니다. 두 문자열을 동일하게 만드는 것이 가능한지 여부를 확인해야 합니다.
따라서 입력이 s ="xy", t ="yx"와 같으면 출력은 True
가 됩니다.이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- st:=s와 t를 연결한 후 문자열 정렬
- 범위 0에서 st - 1 크기의 i에 대해 2만큼 증가, do
- st[i]가 st[i+1]과 같지 않으면
- 거짓을 반환
- st[i]가 st[i+1]과 같지 않으면
- 참 반환
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
예시
class Solution: def solve(self, s, t): st=sorted(s+t) for i in range(0,len(st),2): if st[i]!=st[i+1]: return False return True ob = Solution() print(ob.solve("xy", "yx"))
입력
"xy", "yx"
출력
True