※ 파이썬 문법 관련 내용은 '이것이 코딩테스트다' 교재를 참고하여 정리하였음.
6. join 함수
- 매개변수로 들어온 리스트에 있는 요소 하나하나를 합쳐서 하나의 문자열로 반환하는 함수.
- 사용법:
- 구분자.join(리스트)
- 예시)
ls리스트가 ['8', '7', '3', '2', '1', '1']라면 >>> ''.join(ls)
출력 결과 : 873211
def solution(n):
ls = list(str(n)) # 정수 n을 문자열로 변환 후 리스트로 타입변경
ls.sort(reverse = True) # 내림차순 정렬
return int(''.join(ls))
[python] 파이썬 join 함수 정리 및 예제 (문자열 합치기)
안녕하세요. BlockDMask입니다. 오늘은 파이썬에서 리스트를 문자열로 일정하게 합쳐주는 join 함수에 대해서 알아보려고 합니다. join 함수는 문자열을 다룰 때 유용하게 사용할 수 있는 함수이니
blockdmask.tistory.com
관련 문제
정수 내림차순으로 배치하기 : https://school.programmers.co.kr/learn/courses/30/lessons/12933
7. 정수 제곱근
- 파이썬 math라이브러리 내 정수 제곱근을 구하는 함수가 정의되어 있다. > math.sqrt
- sqrt함수를 사용하려면 math라이브러리를 import해야하는데, 간단한 제곱근 문제는 숫자^1/2 가 제곱근이라는 것을 활용하자.
sqrt = n ** (1/2)
if sqrt % 1 == 0:
return (sqrt+1) ** 2
return -1
관련 문제
정수 제곱근 판별 : https://school.programmers.co.kr/learn/courses/30/lessons/12934
8. Zip함수
- iterable, 순회 가능한 객체를 인자로 받고 같은 인덱스의 값을 차례로 반환하는 함수.
# 다른 사람 풀이 (음양 더하기)
def solution(absolutes, signs):
answer=0
for absolute,sign in zip(absolutes,signs):
if sign:
answer+=absolute
else:
answer-=absolute
return answer
관련 문제
음양 더하기 : https://school.programmers.co.kr/learn/courses/30/lessons/76501
9. find(), index() 함수 / 특정 문자열의 위치 찾기
- 문자열에서 특정 문자의 위치(인덱스)를 찾기 위한 함수에는 find()와 index()가 있다. 두 함수 모두 찾을 문자열이 처음으로 등장하는 위치를 반환한다.
- 둘다 사용법은 "문자열".find/index("찾을 문자열")이다.
- find와 index의 차이
함수 | 반환값(존재할 때) | 반환값 (존재하지 않을 때) | 예외 발생 여부 |
find() | 첫 번째 등장 위치 | -1 | X |
index() | 첫 번째 등장 위치 | ValueError | O |
관련 문제
서울에서 김서방 찾기 : https://school.programmers.co.kr/learn/courses/30/lessons/12919
10. 무한 반복문을 쓸 일이 있을 때, 무작정 while : True 를 쓰는 것 보다는, 반복을 멈추게 할 수 있는 변수의 조건이 무엇이 있을 지 고민해보기.
# 콜라츠 추측 문제, 첫 번째로 제출했던 코드
def solution(num):
if num == 1:
return 0
count = 0
while True:
if num % 2 == 0:
num /= 2
else:
num = 3 * num + 1
count += 1
if count == 500:
return -1
elif num == 1:
break
return count
# 무한반복 멈춤 조건 설정
def solution(num):
answer = 0
while num != 1:
if num % 2 == 0:
num /= 2
else:
num = 3 * num + 1
answer += 1
if answer == 500:
return -1
return answer
관련 문제
콜라츠 추축 : https://school.programmers.co.kr/learn/courses/30/lessons/12943
'Programming > 백준 문제풀이' 카테고리의 다른 글
[프로그래머스 Lv1] 오답노트 (0) | 2025.02.27 |
---|