본문 바로가기

Python8

[프로그래머스 Python] 소수 만들기 💡문제 설명 주어진 숫자 중 3개의 수를 더했을 때, 소수(prime number)가 되는 경우의 개수를 구하기. 숫자들이 들어있는 배열 nums 가 매개변수로 주어질 때, nums 에 있는  숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성하기  💡제한사항1. nums 에 들어있는 숫자의 개수는 3개 이상 50개 이하2. nums 의 각 원소는 1 이상 1,000 이하의 자연수, 중복된 숫자가 들어있지 않다.  💡입출력 예시 💡풀이1. 3중 for 문 : 서로 다른 3개의 값들을 더해주기 위함. ㄴ for 루프는 주어진 범위에서 요소가 없으면 자동으로 실행되지 않고 지나간다. ㄴ 만약, for i in range(4, 3) :.. 2024. 7. 18.
[프로그래머스 Python] 카드 뭉치 ♣ 문제 설명 cards1 과 cards2 를 순서대로 한 장씩 사용하여 (리스트 안의 단어 순서는 바꿀 수 없음) goal list 처럼 만들 수 있으면 "Yes" Return, 아니면 "No" 리턴하는 문제 ♣ 시도했던 코드 1 (오답, runtime error)▶ 풀이 방법 : goal 의 요소 값들을 key로 가지며 index 를 value 로 하는 dic (딕셔너리) 를 생성하여 cards1 과 cards2 를 index 를 요소로 가지는 리스트를 생성하고, cards2 요소의 goal 에서의 index (cards2_idx) 와 cards2 를 cards1 에 더해줬을 때, goal 가 일치하면 "Yes" 아니면 "No" 를 return 하는 식으로 코드를 작성했다. 하지만, runtime 에.. 2024. 7. 17.
[프로그래머스 Python] 명예의 전당 (1) 💡문제 설명💡제한 사항 및 입출력 예시💡나의 정답 코드# 기본적으로 for 문이 실행될 때 마다 reverse sorting(역순 정렬) 수행을 하고, 가장 작은 값 [-1]인덱스 값을 answer 에 추가1. 명예의 전당 (glory) 리스트가 다 채워지기전 까지는 계속 더해준다 ; len(glory) 2. 다 채워진 후, glory 리스트의 가장 작은 값과 해당 순서의 s 값과 비교했을 때 s 값이 더 큰 경우에 glory 리스트의 가장 작은 값을 제거해주고 (pop 함수 활용) s 값을 glory 에 추가해준다. -> 이렇게 실행하면 리스트 개수는 계속해서 k 개로 유지되며, answer 에는 해당 일차에 가장 작은 값을 반환 가능 !def solution(k, score): answer.. 2024. 7. 16.
[프로그래머스 Python] 가장 가까운 값 찾기 💡문제 설명문자가 주어지면, 문자를 하나씩 순서대로 순회하면서 앞에 같은 글자가 있으면 얼마나 가까운지를 인덱스 차로 표현하고, 없다면 그냥 -1을 반환하는 문제💡제한 사항 및 입출력 예제 위의 입출력 예제 처럼 b > a > n > a > n > a 이렇게 순회하는데, b 는 당연히 맨 앞이니까 -1 이 반환되고 a 는 앞에 a 와 동일한 글자가 없기 때문에 -1 , n 도 -1 , 그 다음 나오는 a 는 2 칸 앞에 같은 글자가 있으니 2를 반환, n 도 2칸 앞에 n 이 있으니 2 를 반환, 마지막 a 는 앞에 같은 글자가 2개 있는데, 가장 가까운 a 와의 거리를 계산해야 하므로 2 가 반환되도록 코딩을 해야한다. 💡나의 정답1. answer 라는 빈 리스트 생성2. 일단 1번째 문자는 무조.. 2024. 7. 12.