문제 설명
길이가 같은 두 문자열 str1과 str2가 주어집니다.
두 문자열의 각 문자가 앞에서부터 서로 번갈아가면서 한 번씩 등장하는 문자열을 만들어 return 하는 solution 함수를 완성해 주세요.
입출력 예
str1 | str2 | result |
"aaaaa" | "bbbbb" | "ababababab" |
나의 풀이
def solution(str1, str2):
str3 = ""
for i in range(len(str1)):
str3 += str1[i] + str2[i]
return str3
분명 for문도 사용했었는데... 왜 답이 나오지 않았었는지.... 너무 어려워 보였는데 막상 답을 알고나면 약간 상실감이 몰려온다ㅋㅋㅋㅋㅋㅋ큐ㅠㅠ 아직 갈 길이 굉장히 멀다.
다른 사람의 풀이
def solution(str1, str2):
answer = ''.join([str1[i] + str2[i] for i in range(len(str1))])
return answer
다른 사람들이 짠 코드를 보면 항상 감탄하게 된다. 물론 이해조차 못하는게 대부분이긴 하지만... 이 풀이도 굉장히 코드가 간결하면서도 쉬워보여서 내가 짠것과 비교하기 위해 가져왔다. 그리고 모르는 함수도 새롭게 알게 되었다!!
join()함수 : 매개변수로 들어온 리스트에 있는 요소 하나하나를 합쳐서 하나의 문자열로 바꾸어 반환하는 함수
'구분자'.join(리스트나 튜플)
리스트의 값과 값 사이에 '구분자'에 들어온 구분자를 넣어서 하나의 문자열로 합쳐준다.
'_'.join(['a','b','c'])라고 한다면 "a_b_c" 와 같은 형태로 출력된다.
'Coding > 코딩 문제' 카테고리의 다른 글
코딩 문제 : 더 크게 합치기 (0) | 2024.10.04 |
---|---|
코딩 문제 : 문자 리스트를 문자열로 변환하기 (0) | 2024.10.04 |
SQL 문제 : 루시와 엘라 찾기 (0) | 2024.10.04 |
코딩기초 문제 : 대소문자 바꿔서 출력하기 (0) | 2024.10.03 |
SQL문제 : 성분으로 구분한 아이스크림 총 주문량 (1) | 2024.10.03 |