백준 19844. 단어 개수 세기 (파이썬) 19844번: 단어 개수 세기 첫째 줄에 “문장”을 나타내는 문자열이 주어진다. 이 문자열은 영어 소문자, 띄어쓰기, -(하이픈), '(어포스트로피)로만 이루어져 있다. 이때 띄어쓰기, 하이픈, 어포스트로피 중 어느 것도 인 www.acmicpc.net # [BOJ] 19844. 단어 개수 세기 S = list(input().replace(' ', '-').split('-')) ans = len(S) words = ["c'", "j'", "n'", "m'", "t'", "s'", "l'", "d'", "qu'"] for s in S: # 줄인 단어로 시작하는 경우만 카운트, 이후에 모음이 올 때만 if s[0:2] in words: if s[2] in ['a'..
백준 11976. Promotion Counting (파이썬) 11976번: Promotion Counting Input consists of four lines, each containing two integers in the range 0..1,000,000. The first line specifies the number of bronze participants registered before and after the contest. The second line specifies the number of silver participants before and www.acmicpc.net 📑 문제 대회는 브론즈, 실버, 골드, 플래티넘의 등급으로 이루어져 있고, 만점을 받으면 다음 등급으로 승급이 가..
백준 2805: 나무 자르기 (파이썬) 2805번: 나무 자르기 첫째 줄에 나무의 수 N과 상근이가 집으로 가져가려고 하는 나무의 길이 M이 주어진다. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) 둘째 줄에는 나무의 높이가 주어진다. 나무의 높이의 합은 항상 M보 www.acmicpc.net # [BOJ] 2805. 나무 자르기 # N: 나무의 수, M: 가져가고자 하는 나무의 길이 N, M = map(int, input().split()) L = list(map(int, input().split())) # 적어도 M 미터의 나무를 집에 가져가기 위해서 절단기에 설정할 수 있는 높이의 최댓값 min_v = 0 max_v = max(L) while min_v mid: a +..
백준 1966: 프린터 큐 (파이썬) 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net # [BOJ] 1966. 프린터 큐 T = int(input()) for tc in range(T): # N: 문서의 개수, M: 현재 queue에서의 위치 N, M = map(int, input().split()) ans = 0 # N개 문서의 중요도 imp = list(map(int, input().split())) L = ['o'] * N L[M] = 'x' while 'x' in L: # 맨 앞 값보다 중요도가 높은 값이..
백준 4949: 균형잡힌 세상 (파이썬) 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 각 줄은 마침표(".")로 끝난다 www.acmicpc.net # [BOJ] 4949. 균형잡힌 세상 OP = ['(', '['] CP = [')', ']'] while 1: S = input() if S == '.': break # 괄호가 아예 없는 경우 yes 처리 if '(' not in S and ')' not in S and '[' not in S and ']' not in S: print('yes') # 여기서부터 문제풀이 else: ans = 'ye..
백준 2217: 로프 (파이썬) 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net # [BOJ] 2217. 로프 2022-11-26 N = int(input()) a = 0 # 전체 로프를 작은 것부터 정렬 L = sorted(list(int(input()) for _ in range(N))) for _ in range(N): # 가장 작은 값을 전체 로프의 수 만큼 곱해 보고 현재 최대값보다 크면 닶 변경 aa = L[0] * len(L) if aa > a: a = aa # 0번째 인덱스 값을 없앰으..