Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ubuntu
- 금융문자분석경진대회
- 프로그래머스 파이썬
- github
- hackerrank
- SW Expert Academy
- programmers
- 맥북
- 백준
- 더현대서울 맛집
- gs25
- 우분투
- 캐치카페
- 데이콘
- Docker
- Kaggle
- 파이썬
- 편스토랑
- 편스토랑 우승상품
- AI 경진대회
- 자연어처리
- dacon
- Git
- PYTHON
- Baekjoon
- 프로그래머스
- leetcode
- Real or Not? NLP with Disaster Tweets
- ChatGPT
- 코로나19
Archives
- Today
- Total
솜씨좋은장씨
[Programmers] 이상한 문자 만들기 (Python) 본문
728x90
반응형
1일 1문제 279일차의 문제는!
프로그래머스의 이상한 문자 만들기 입니다.
첫 번째 시도
def solution(s):
s_list = list(s)
for i in range(len(s_list)):
if i % 2 == 0:
s_list[i] = s_list[i].upper()
elif i % 2 == 1:
s_list[i] = s_list[i].lower()
answer = "".join(s_list)
return answer
이 문제는 짝수 인덱스의 문자를 대문자로 홀수 인덱스의 문자를 소문자로 바꾸어주는 문제입니다.
그런데 전체 문자열에 대한 인덱스 기준이 아니라 공백기준으로 잘라진 단어의 기준 이었습니다.
그래서 첫번째 시도는 실패! 역시 문제를 잘 읽어야 합니다
Solution
def solution(s):
s_split = s.split(" ")
for k in range(len(s_split)):
s_list = list(s_split[k])
for i in range(len(s_list)):
if i % 2 == 0:
s_list[i] = s_list[i].upper()
elif i % 2 == 1:
s_list[i] = s_list[i].lower()
s_split[k] = "".join(s_list)
answer = " ".join(s_split)
return answer
그래서 공백을 기준으로 나눈뒤에 각 문자열에서 각 문자열의 인덱스를 기준으로 진행했습니다.
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[leetCode] 92. Reverse Linked List II (Python) (0) | 2020.12.26 |
---|---|
[Programmers] 최고의 집합 (Python) (0) | 2020.12.22 |
[Programmers] 두 개 뽑아서 더하기 (Python) (0) | 2020.12.18 |
[leetCode] 1464. Maximum Product of Two Elements in an Array (Python) (0) | 2020.12.17 |
[leetCode] 1662. Check If Two String Arrays are Equivalent (Python) (0) | 2020.12.12 |
Comments