코딩테스트 파이썬/hackerrank
Append and Delete
세용용용용
2024. 9. 23. 13:50
https://www.hackerrank.com/challenges/append-and-delete/problem?isFullScreen=true
Append and Delete | HackerRank
Can you convert $s$ to $t$ by performing exactly $k$ operations?
www.hackerrank.com
나의 코드
#!/bin/python3
import math
import os
import random
import re
import sys
def appendAndDelete(s, t, k):
result_str = ''
if len(s) + len(t) <= k:
return 'Yes'
for i in range(min(len(s), len(t))): # 선형 시간 복잡도
# 내부 루프 상수 시간
if s[i] != t[i]:
break
result_str += s[i]
print(result_str)
k -= (len(s) - len(result_str))
k -= (len(t)) - len(result_str)
if k >= 0:
if k%2==0:
return 'Yes'
return 'No'
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
s = input()
t = input()
k = int(input().strip())
result = appendAndDelete(s, t, k)
fptr.write(result + '\n')
fptr.close()
시간 복잡도
for i in range(min(len(s), len(t))): # 선형 시간 복잡도
# 내부 루프는 상수시간
해당 알고리즘 시간복잡도는 선형 시간 복잡도 ( O( n ) )