문제링크: 이상한 문자 만들기
✍🏻 Information
| content | |
|---|---|
| 언어 | python |
| 난이도 | ⭐️⭐️ |
| 풀이시간 | 25분 |
| 제출횟수 | 3 |
| 인터넷검색유무 | yes |
🍒 My Code
def solution(s):
answer = ''
cnt=0
for i in range(len(s)):
if s[i]==" ":
answer+=s[i]
cnt=0
else:
if cnt%2==0:
answer+=s[i].upper()
else:
answer+=s[i].lower()
cnt+=1
return answer
💡 What I learned
처음 작성한 코드에서는 s를 빈칸을 기준으로 쪼개서 대문자/소문자로 바꿔주고 빈칸 하나씩을 더해주는 방식으로 풀이하였는데, 그렇게 하니 " TRy HElLo WORLD "처럼 빈칸이 여러개 있을때 문제가 생기거나 풀이가 길어졌다.
-> 이 반례도 질문하기 보고 알았다.. 무조건 빈칸은 1개인줄 알았다.. 반성하자..
str.upper(): 문자열을 대문자로
str.lower(): 문자열을 소문자로
str.split(sep): 지정된 구분 기호를 기준으로 문자열을 분할. sep 구분 기호를 생략하면 연속된 공백이 구분 기호로 처리됨.
words = s.split()