728x90
반응형

프로그래머스 26

[파이썬] 프로그래머스_진료순서 정하기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120835 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 새로운 리스트(e_sort)에 내림차순 정렬한 응급도를 저장한 후, emergency 리스트의 i값이 e_sort에서 가지는 인덱스에 +1 한 값을 answer에 넣어주면 된다. 코드 -파이썬 def solution(emergency): answer = [] e_sort = sorted(emergency, reverse=True) for i in emergency: answer.app..

[파이썬] 프로그래머스_최빈값 구하기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120812 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 딕셔너리를 사용해서 각 숫자의 개수를 저장해두면 풀기 편하다. max value값과 같은 value를 가진 key의 개수만 파악하면 된다. 코드 -파이썬 import operator def solution(array): answer = list(set(array)) # 중복 제거한 array dic = {} for i in answer: dic[i] = array.count(i) #각..

[파이썬] 프로그래머스_시저 암호

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12926 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 이 문제는 대문자 / 소문자 / 공백을 따로 처리해줘야 한다. 각 알파벳에 n을 더한 후 알파벳을 구하면 되는데, z / Z를 넘어가면 다시 a / A로 돌아가야 한다. 이는 각 알파벳을 아스키코드로 변경한 후 계산하면 쉽다. 아스키코드 값을 보면 a : 97 - z : 122 A : 65 - Z : 90 이므로 각각 z / Z 값을 넘어가는지 확인해주면 된다. 넘어간다면 알파벳 개수(..

[파이썬] 프로그래머스_자릿수 더하기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 각 자릿수를 구하려면 10으로 나눠서 그 나머지값을 보면 된다. 이제 그 다음 자릿수를 구하기 위해선 10으로 나눈 몫을 다시 10으로 나눠주면 된다. 코드 -파이썬 def solution(n): answer = 0 while n > 0: answer += (n % 10) n = n // 10 return answer

[파이썬] 프로그래머스_서울에서 김서방 찾기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/12919 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 파이썬은 리스트에서 특정 원소의 인덱스를 반환해주는 index 함수가 있다. 코드 -파이썬 def solution(seoul): answer = seoul.index('Kim') return ("김서방은 "+str(answer)+"에 있다")

[파이썬] 프로그래머스_두 개 뽑아서 더하기

문제 https://programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 해설 두 수 씩만 더하기 때문에 중복 for문을 통해 하나씩 더한 값을 구할 수 있다. 값이 answer 안에 없다면 answer에 넣어주고 마지막으로 오름차순 정렬만 해주면 답을 구할 수 있다. 코드 -파이썬 #프로그래머스 68644(두 개 뽑아서 더하기) def solution(numbers): answe..

[파이썬] 프로그래머스_K번째 수

문제 https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 해설 딱히 뭐 생각할 것 없이 문제에 적힌 순서대로 코드를 작성하면 된다. 코드 -파이썬 def solution(array, commands): answer = [] for i in commands: arr = array[i[0]-1:i[1]] arr.sort() answer.append(arr[i[2]-1]) return answer #################################################..

[파이썬] 프로그래머스_주식가격

문제 https://programmers.co.kr/learn/courses/30/lessons/42584#qna 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 해설 이 문제는 문제 설명이 좀 헷갈리게 되어 있는데 결국 요지는 prices[i] 값보다 작은 수가 나오는가이다. 바로 다음 값이 큰 수가 나오더라도 일단 1초는 기다렸다고 보기 때문에 1을 더해준 다음 prices의 값을 비교하면 된다. 코드 -파이썬 #프로그래머스 42584(주식가격) def soluti..

[파이썬] 프로그래머스_카펫

문제 https://programmers.co.kr/learn/courses/30/lessons/42842 코딩테스트 연습 - 카펫 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 programmers.co.kr 해설 이 문제는 입출력 예시를 직접 손으로 그려보면 좀 더 쉽게 방법을 찾을 수 있다. 위 이미지를 보면 Y의 가로(빨강B) + Y의 세로(파랑B) + 2(하양B) == B // 2라는 것을 알 수 있다. 그렇다면 Y가로 + Y세로 + 2값이 B//2와 같아질 때 카펫의 가로, 세로 크기를 알아낼 수 있다. 카펫의 가로, 세로는 각각 Y가로+2, Y세로..

[파이썬] 프로그래머스_소수 찾기

문제 https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 programmers.co.kr 해설 순열 함수를 사용해 본 적이 없어서 푸는데 시간이 오래 걸렸다.. 우선 permutations(순열) 함수로 입력값 numbers에서 나올 수 있는 모든 경우의 수를 알아낸 후, join 함수로 각각을 합쳐서 만든 수를 리스트에 넣어주면 된다. 그 다음 각각의 값이 소수인지 체크해주면 끝난다. 코드 -파이썬 #프로그래머스 42839(소수..

728x90
반응형