본문 바로가기

Problem Solving/백준52

[백준|파이썬] 2852: NBA 농구 (실버3) 문제 https://www.acmicpc.net/problem/2852 2852번: NBA 농구 첫째 줄에 골이 들어간 횟수 N(1 goal[2]: #1팀이 승리 중 d_m, d_s = map(int, dic["1"].split(":")) # 1팀의 총 승리시간 d_m += m #1팀의 승리시간을 다음 골이 들어간 지점까지 연장 d_s += s while d_s >= 60: #60초 넘으면 1분으로 처리 d_s -= 60 d_m += 1 dic["1"] = str(d_m).zfill(2)+":"+str(d_s).zfill(2) #"MM:SS" 형태로 만들어 dic에 저장 elif goal[1] < goal[2]: #2팀이 승리 중 d_m, d_s = map(int, dic["2"].split(":")) .. 2023. 6. 27.
[백준|파이썬] 1138: 한 줄로 서기 (실버2) 문제 https://www.acmicpc.net/problem/1138 1138번: 한 줄로 서기 첫째 줄에 사람의 수 N이 주어진다. N은 10보다 작거나 같은 자연수이다. 둘째 줄에는 키가 1인 사람부터 차례대로 자기보다 키가 큰 사람이 왼쪽에 몇 명이 있었는지 주어진다. i번째 수는 0보다 www.acmicpc.net 🐍파이썬 먼저 주석이 없는 코드는 다음과 같다. import sys, itertools input=sys.stdin.readline n = int(input()) dic = {idx+1:item for idx, item in enumerate(map(int, input().split()))} for i in itertools.permutations([i for i in range(1,.. 2023. 6. 24.
[백준|파이썬] 16506: CPU (실버5) 문제 https://www.acmicpc.net/problem/16506 16506번: CPU 디지털하드웨어설계 과목의 최종 프로젝트는 16-bit CPU를 설계하고 Verilog 언어로 구현하는 것이다. 본인이 구현한 CPU가 제대로 동작하는지 테스트하기 위해서는 기계어 코드를 입력으로 주어야 www.acmicpc.net 🐍파이썬 import sys input=sys.stdin.readline n = int(input()) cpu = {"ADD": "0000", "SUB": "0001", "MOV":"0010", "AND":"0011", "OR":"0100", "NOT":"0101", "MULT":"0110", "LSFTL":"0111", "LSFTR":"1000", "ASFTR":"1001", "RL.. 2023. 5. 6.
[백준|파이썬] 3568: iSharp (실버5) 문제 https://www.acmicpc.net/problem/3568 3568번: iSharp 입력으로 주어진 변수 선언문을 문제의 조건에 맞게 변형한 뒤, 한 줄에 하나씩 출력한다. 변수형과 변수명 사이에는 공백이 하나 있어야 한다. 출력은 입력으로 주어진 변수 선언문에서 변수가 www.acmicpc.net 🐍파이썬 import sys input=sys.stdin.readline # 세 변수 입력받은 뒤 ";" 제외, 입력받은 문자열을 " " 기준으로 슬라이싱 a = input().rstrip()[:-1].split(" ") #변수의 갯수만큼 타입리스트 생성 type_list = [a[0]] * (len(a) - 1) #첫번째 원소인 type 제거 a = a[1:] for i in range(len(.. 2023. 5. 5.
[백준|파이썬] 14719: 빗물 (골드5) 문제 https://www.acmicpc.net/problem/14719 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net 🐍파이썬 import sys input=sys.stdin.readline answer = 0 h, w = map(int, input().split()) #2차원 세로 h, 2차원 가로 w arr = list(map(int, input().split())) #블록이 쌓인 높이 for i in range(1, len(arr)-1): left_max = max(arr[:i+1]).. 2023. 5. 4.
[백준|파이썬] 7568: 덩치 (실버5) 문제 https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 🐍파이썬 더보기 ❌틀린 코드 import sys input=sys.stdin.readline n = int(input()) people = [] for _ in range(n): people.append(input().split()) arr = [0] * n #등수 for i in range(len(people)): for j in range(i+1, len(people)): i.. 2023. 4. 30.
[백준|파이썬] 4673: 셀프 넘버 (실버5) 문제 https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net ❓ 셀프 넘버 생성자가 존재하는 숫자는 아래와 같다. 👇 1+1 = 2 2+2 = 4 3+3 = 6 4+4 = 8 5+5 = 10 6+6 = 12 7+7 = 14 8+8 = 16 9+9 = 18 10+1+0 = 11 11+1+1 = 13 12+1+2 = 15 13+1+3 = 17 14+1+4 = 19 15+1+5 = 21 16+1+6 = 23.. 2023. 4. 29.
[백준|파이썬] 9655: 돌 게임 (실버5) 문제 https://www.acmicpc.net/problem/9655 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 🐍파이썬 import sys n = int(sys.stdin.readline()) i = n // 3#turn:홀수인 경우 상근, 짝수인 경우 창영 n %= 3 i += n if i % 2 == 1: print("SK") else: print("CY") 가져갈 수 있는 돌의 갯수는 1개 또는 3개이므로 매번 3개씩 각자 가져갔다고 치고 전체 돌의 갯수를 3으로 나누었다. 3번씩 가져간 마지막 턴이 누구의 턴인지 알기 위해 n//3을 해서 i값을 구했고 n값은 3으로 나눈 나머지로 업데이트했다. 나머지로 남은 돌은.. 2023. 4. 28.
[백준|파이썬] 21966: (중략) (실버5) 문제 https://www.acmicpc.net/problem/21966 21966번: (중략) 알파벳 대문자, 알파벳 소문자, 쉼표, 마침표의 아스키 코드는 각각 65-90, 97-122, 44, 46이다. www.acmicpc.net 🐍파이썬 import sys n = int(sys.stdin.readline()) s = sys.stdin.readline().rstrip() if n 25: #앞/뒤 11글자를 제외한 나머지 부분에 "."이 존재하지 않는다면 if "." not in s[11:-12]: a = s[:11] b = "..." c = s[-11:] #"."이 존재한다면 else: a = s[:9] b = "......" c = s[-10:] print(a+b+c) 2023. 4. 27.
[백준|파이썬] 25757: 임스와 함께하는 미니게임 (실버5) 문제 https://www.acmicpc.net/problem/25757 25757번: 임스와 함께하는 미니게임 첫 번째 줄에는 사람들이 임스와 같이 플레이하기를 신청한 횟수 $N$과 같이 플레이할 게임의 종류가 주어진다. $(1 \le N \le 100\,000)$ 두 번째 줄부터 $N$개의 줄에는 같이 플레이하고자 하는 사람들 www.acmicpc.net 🐍파이썬 import sys n, p = sys.stdin.readline().split() player = set() ims_p = {"Y":1, "F":2, "O":3} for _ in range(int(n)): player.add(sys.stdin.readline().rstrip()) print(len(player)//ims_p[p]) 한 번 .. 2023. 4. 23.
[백준|파이썬] 2891: 카약과 강풍 (실버5) 문제 https://www.acmicpc.net/problem/2891 2891번: 카약과 강풍 첫째 줄에 팀의 수 N, 카약이 손상된 팀의 수 S, 카약을 하나 더 가져온 팀의 수 R이 주어진다. (2 ≤ N ≤ 10, 1 ≤ S, R ≤ N) 둘째 줄에는 카약이 손상된 팀의 번호가 주어진다. 팀 번호는 중복되지 않 www.acmicpc.net 🐍파이썬 import sys n, s, r = map(int, sys.stdin.readline().split()) temp = [] kayac = [0 for _ in range(n+2)]#대회에 참가한 팀의 갯수만큼 0으로 초기화. 인덱스처리 위해 앞뒤 0으로 패딩 temp = list(map(int, sys.stdin.readline().split())) .. 2023. 4. 21.
[백준|파이썬] 2563: 색종이 (실버5) 문제 https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 🐍파이썬 더보기 ❌ 실패한 코드 import sys paper = int(sys.stdin.readline()) dic = {} for i in range(paper): a, b = map(int, sys.stdin.readline().split()) dic[i] = [(a, a+10), (b, b+10)] sum = 0 for i in range(paper): for j in range(i+1.. 2023. 4. 19.
반응형