문제
https://school.programmers.co.kr/learn/courses/30/lessons/12939#
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.
제한 조건
s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.
입출력 예
s return
"1 2 3 4" "1 4"
"-1 -2 -3 -4" "-4 -1"
"-1 -1" "-1 -1"
코드
def solution(s):
tmp = list(map(int, s.split()))
return str(min(tmp)) + " " + str(max(tmp))
설명
알고리즘 자체를 이해하지 못했다. 맨처음 문자열 s를 split 을 이용해 list 형으로 만든다는거 까지는 이해를 했는데, 이후엔 어떤식으로 진행해야할지 아예 몰라서 for문 돌리면서 각 원소들의 양수, 음수 여부를 따지고... 또 거기서 음수인 원소가 있을 경우엔 그 안에서 양수, 음수 여부를 또 따지고...
완전 문제를 이해하지 못했다.
이 문제 포인트!
1. split()을 통해 문자열을 리스트로 변경하기 -> 성공
2. map()을 통해 for문을 사용하지 않고, str → int로 변경
https://dojang.io/mod/page/view.php?id=2286
파이썬 코딩 도장: 22.6 리스트에 map 사용하기
이번에는 리스트에 map을 사용해보겠습니다. map은 리스트의 요소를 지정된 함수로 처리해주는 함수입니다(map은 원본 리스트를 변경하지 않고 새 리스트를 생성합니다). list(map(함수, 리스트)) tupl
dojang.io
'Coding Test > Python' 카테고리의 다른 글
| [프로그래머스] 이진 변환 반복하기 (0) | 2023.06.07 |
|---|---|
| [프로그래머스] 최솟값 만들기 (0) | 2023.06.06 |
| [Python] 코딩테스트 준비 직전 확인 사항들 (2) | 2023.05.14 |
| [python] 공원산 (0) | 2023.05.08 |
| [python] 추억 점수 (0) | 2023.05.06 |