분류 전체보기

알고리즘

[프로그래머스 / Python] 이모티콘 할인행사

🧩 문제 이모티콘 할인행사 📍 정리 이모티콘 판매액을 늘리는 것 보다, 이모티콘 플러스 서비스 가입자를 최대한 늘리는 것이 우선이다.이모티콘은 10%, 20%, 30%, 40% 중 하나의 비율로 할인되며, 사용자는 자신이 설정한 기준에 맞게 이모티콘을 사거나, 이모티콘 플러스에 가입한다. 🌱 풀이과정 1️⃣ 할인율 조합 만들기 # 중복 순열로 할인율 조합 찾기 discounts = product([10,20,30,40], repeat = m) 2️⃣ 할인된 이모티콘 금액 구하기 - 사용자의 할인율 고려 for user in users: # 사용자의 구매 기준 rate, max_cost = user # 사용자의 이모티콘 결제 금액 buy_cost = 0 for i, emoticon in enumerate(..

Server/AWS

AWS EC2 인스턴스 생성하기

AWS EC2에 접속해 인스턴스 시작 지역이 서울로 되어있는지도 확인! 인스턴스 설정은 아래와 같이 해주었다. AMI : ubuntu 20.04 인스턴스 유형 : t2.micro 🌟 다운로드 받은 키 페어 파일은 재 발급이 되지 않기 때문에 잘 보관해두어야 한다. 🌟 스토리지는 프리티어 기준 30GB까지 사용이 가능하다. 인스턴스가 생성되었다 !

알고리즘

[프로그래머스 / Python] 주식가격

🧩 문제 🌱 풀이과정 1️⃣ 이중 for문 사용하기 - O(N^2) def solution(prices): answer = [] for i in range(len(prices)): time = 0 for j in range(i+1, len(prices)): if prices[i] right_price: time += 1 break else: time += 1 answer.append(time) return answer 둘다 시간복잡도가 O(N^2)이기는 하지만, 효율성 테스트에서의 시간이 전체적으로 줄어들었다 ..! 이유는 전자의 경우 최악의 경우 n*n번 탐색하지만, 후자는 while문에서 n번, for문에서 n-1 번으로 총 n*(n-1)번 탐색하기 때문인 것 같다. 내 머리로는 이것이 최선일 것 같..

알고리즘

[프로그래머스 / Python] 공원 산책

🔫 문제 : 공원 산책 https://school.programmers.co.kr/learn/courses/30/lessons/172928 📍 정리 산책 경로가 주어졌을 때, 공원의 범위와 장애물을 고려해 강아지의 최종 위치를 구하면 된다! - 공원의 범위를 벗어나거나 장애물을 마주치면 해당 명령을 수행하기 전 위치로 돌아가 다음 명령을 수행하면 된다. 🌱 풀이과정 1️⃣ 산책을 시작할 위치 찾기 아래와 같이 문자열 "S"가 있는 x좌표와 y좌표의 위치를 answer에 넣어주었다. for x in range(H): for y in range(W)): if "S" in park[x][y]: answer.append(x) answer.append(y) 2️⃣ 강아지 산책시키기 먼저, 동서남북의 이동을 다음과..

알고리즘

[프로그래머스 / Python] 단어 변환

🔫 문제 : 단어 변환 📍 정리 현재 단어와 words에 있는 단어가 알파벳 하나만 다르다면 words에 있는 단어로 변경해주면 된다. - words에 target이 없다면 최종 목표인 target으로 바꿀 수 없으므로 0을 반환한다. 🌱 풀이 방법 어느 경우를 탐색해도 깊이가 같다 -> BFS를 사용하자! 1️⃣ 현재 단어와 변환 횟수를 담을 queue와 방문 여부를 확인할 list를 만들어준다. q = deque() q.append([begin, 0]) visit = [0] * len(words) 2️⃣ words에 target이 존재하는지 확인 if target not in words: return 0 3️⃣ queue에서 현재 단어와 변환 횟수를 꺼낸 후, target과 현재 단어가 같은지 확..

알고리즘

[프로그래머스 / Python] 베스트앨범

🔫 문제 : 베스트 앨범 📍 정리 장르 리스트와 노래의 재생횟수가 담긴 리스트가 주어질 때, 많이 재생된 장르에서 많이 재생된 노래의 고유번호를 2개씩 반환하면 된다. (노래가 같은 횟수로 많이 재생되었다면 고유번호가 낮은 순으로, 많이 재생된 노래가 하나라면 하나만 수록) 🌱 풀이 방법 1️⃣ 딕셔너리 두개를 만들어준다. total_genres : 장르별 총 재생횟수를 담을 딕셔너리이다. song_plays : 장르별로 각 노래의 [재생횟수, 고유번호] 리스트를 담을 딕셔너리이다. 2️⃣ 정렬하기 total_genres : 장르별 총 재생횟수를 기준으로 정렬 total_genres = dict(sorted(total_genres.items(), key=lambda x: x[1], reverse=True..

허지렁이
'분류 전체보기' 카테고리의 글 목록 (10 Page)