[백준] 1389번, 케빈 베이컨의 6단계 법칙 (Python)
·
알고리즘/백준
문제 https://www.acmicpc.net/problem/1389 1389번: 케빈 베이컨의 6단계 법칙 첫째 줄에 유저의 수 N (2 ≤ N ≤ 100)과 친구 관계의 수 M (1 ≤ M ≤ 5,000)이 주어진다. 둘째 줄부터 M개의 줄에는 친구 관계가 주어진다. 친구 관계는 A와 B로 이루어져 있으며, A와 B가 친구라는 뜻 www.acmicpc.net 코드 import collections import sys INF = sys.maxsize n, m = map(int, input().split()) graph = [[] for _ in range(n+1)] for i in range(m): a, b = map(int, input().split()) graph[a].append(b) graph..
[프로그래머스] Level 2, 메뉴 리뉴얼 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/72411?language=python3 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr 코드 from itertools import combinations from collections import Counter def solution(orders, course): answer = [] for i in course: for j in orders: list_j = list(j) list_j.sort() # order..
[프로그래머스] Level 1, 신규 아이디 추천 (Python)
·
알고리즘/프로그래머스
문제 https://programmers.co.kr/learn/courses/30/lessons/72410?language=python3 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr 코드 def solution(new_id): answer = 0 # 1 new_id = new_id.lower() new_id_list = list(new_id) #print(ord('.')) # a~z : 97 ~ 122 # 0~9 : 48 ~ 57, - : 45, _ : 95, . : 46 delete = [] # ..
[백준] 2193번, 이친수 (Python)
·
알고리즘/백준
문제 https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 코드 n = int(input()) dp = [0 for _ in range(90)] dp[0] = 1 dp[1] = 1 dp[2] = 2 for i in range(3, n): for j in range(i-1): # i자릿수 - 2 까지 전부 더하고 +1 dp[i] += dp[j] dp[i] += 1 print(dp[n-1]) n = 6 일때 1 0 0 0 0 0 - 6 1 0..