[Baekjoon] 1062. 가르침
·
코딩테스트/Python
🔗 Problem Linkhttps://www.acmicpc.net/problem/1062❔Thinking정해진 개수의 알파벳 조합을 만들 때, 해당 알파벳들로 만들 수 있는 단어의 최대 개수를 반환한다.anta, tica가 앞 뒤로 붙기 때문에, 총 5개의 알파벳은 조합에 무조건 포함되어야 한다. 💻Solutionimport sysfrom itertools import combinationsinput = sys.stdin.readlineN, K = map(int, input().split())words = []for _ in range(N): word = input().rstrip() words.append(set(word[4:-4]))if K 🗝️keypoint주어진 단어들에 등장하는..
[Programmers] Level 2. 양궁대회
·
코딩테스트/Python
🔗 Problem Link 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr❔Thinking가장 큰 점수 차이로 상대를 이기는 경우를 반환하고, 불가능하다면 -1을 반환한다.총 N발의 화살이 주어지고, 상대보다 해당 점수에 더 많은 화살을 맞혀야 해당 점수를 가져올 수 있다.점수차 같은 경우에는, 더 적은 점수에 화살을 쏜 경우를 반환한다.💻Solutiondef solution(n, info): # 해당 점수를 획득 한다 or 못한다 def get_score(arrow:int, targets:list, now_target:int): if now_target == 10 or..
[Baekjoon] 1025. 제곱수 찾기
·
코딩테스트/Python
🔗 Problem Linkhttps://www.acmicpc.net/problem/1025❔Thinking주어진 표에서, 일정한 간격으로 이동하며 숫자를 선택해 완전 제곱수를 만든다.만들 수 있는 완전 제곱수 중 가장 큰 수를 반환한다. 완전 제곱수를 만들 수 없는 경우 -1을 반환한다.완전 제곱수는 어떤 정수를 제곱한 수이다.💻Solutionimport sys, mathinput = sys.stdin.readlineN, M = map(int, input().split())board = [list(input().rstrip()) for _ in range(N)]def check(num: int): return math.isqrt(num) ** 2 == numanswer = set()for row..
[Programmers] Level 2. 혼자 놀기의 달인
·
코딩테스트/Python
🔗 Problem Link 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr❔Thinking상자를 열어서 해당 상자 안에 있는 숫자에 해당하는 상자를 연속적으로 열어나간다.한번에 열 수 있는 상자의 수를 기록하고, 더이상 열 수 있는 상자가 없을 때까지 상자를 선택하여 연다.한번에 연 상자들을 그룹화할때, 두 개의 그룹의 상자 수를 최대로 한 경우를 반환한다. 그룹이 하나라면 0이다.💻Solutiondef solution(cards): answer = [] visited = [False] * len(cards) def dfs(num:int): cnt = 0 ..
[Baekjoon] 1202. 보석 도둑
·
코딩테스트/Python
🔗 Problem Linkhttps://www.acmicpc.net/problem/1202❔Thinking보석의 무게와 가격이 주어질 때, 가방에 보석 하나씩만을 담아 최대 가격을 반환한다.💻Solutionimport heapqimport sysinput = sys.stdin.readlineN, K = map(int, input().split())jewels = []bags = []for _ in range(N): weight, value = map(int, input().split()) jewels.append((weight, value))for _ in range(K): bags.append(int(input()))jewels.sort() bags.sort()max_heap = [..
[Programmers] Level 2. 혼자서 하는 틱택토
·
코딩테스트/Python
🔗 Problem Link 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr❔Thinking선공인 O와 후공인 X를 번갈아 놓는 틱택토 게임을 혼자서 진행할때, 가능한 경우인지 불가능한 경우인지 반환한다.실수일 가능성을 판단하는게 아니라, 나올 수 있는 경우인지를 판단한다.💻Solutiondef is_Bingo(b:list): bingo = set() # 좌우 for row in b: if row in ["OOO", "XXX"]: bingo.add(row) # 상하 for col in list(zip(*b)): if ''.join(..