1. 문자열 뒤집기
[내 풀이]
(1)
def solution(my_string):
rev_string = ''
rev_string = my_string[::-1]
return rev_string
슬라이싱 이용하깅
(2)
def solution(my_string):
rev_string = ''
for c in my_string:
rev_string = c + rev_string
return rev_string
문자열 안의 글자 c 를 순회하기
[다른 풀이]
(1)
def solution(my_string):
return ''.join(list(reversed(my_string)))
(2) 위 풀이를 풀어쓰면
def solution(my_string):
my_list = list(my_string)
my_list.reverse()
answer = ''.join(my_list)
return answer
2. 직각삼각형 출력하기
[내 풀이]
n = int(input())
answer = ''
for i in range(1, n+1):
answer = i * '*'
print(answer)
[다른 풀이]
n = int(input())
for i in range(n): # 0 ~ n-1 까지의 숫자를 순회
print("*" * (i +1))
3. 짝수 홀수 개수
[내 풀이]
def solution(num_list):
answer = []
count_odd = 0
count_even = 0
for i in range(0, len(num_list)):
if num_list[i] % 2 == 0:
count_even += 1
else:
count_odd += 1
answer.append(count_even)
answer.append(count_odd)
return answer
[다른 풀이]
(1)
def solution(num_list):
answer = [0,0]
for n in num_list:
answer[n%2]+=1
return answer
n을 2로 나눈 나머지(=> 짝수면 0, 홀수면 1이 나오니까) 를 index 로 사용
(2)
def solution(num_list):
odd = sum(1 for n in num_list if n % 2)
return [len(num_list) - odd, odd]
n 이 짝수이면 2로 나눈 나머지 = 0 (False)
n 이 홀수이면 2로 나눈 나머지 = 1 (True)
True일때 1을 odd에 더한다
4. 문자 반복 출력하기
[내 풀이]
def solution(my_string, n):
answer = ''
for c in my_string:
answer += n * c
return answer
[다른 풀이]
(1)
def solution(my_string, n):
return ''.join(i*n for i in my string)
리스트 컴프리헨션 : [표현식 for 항목 in 반복가능객체 if 조건]
여기서는 제너레이터 표현식을 쓴것
join 메서드로 리스트를 하나의 문자열로 결합
'개발 공부 일지 > Python' 카테고리의 다른 글
프로그래머스 코딩테스트 입문 day7 : 문자열, 조건문, 수학, 반복문 (0) | 2024.07.02 |
---|---|
프로그래머스 코딩테스트 입문 day5 : 수학, 배열 (0) | 2024.07.02 |
프로그래머스 코딩테스트 입문 day4 : 수학 : 배열 (0) | 2024.06.23 |
파이썬 - 자릿수 지정하는 방법 (0) | 2024.06.22 |
프로그래머스 코딩테스트 입문 day3 : 사칙연산, 배열, 수학 (0) | 2024.06.22 |