본문 바로가기

Algorithm/baekjoon65

[파이썬]baekjoon 3079: 입국심사 https://www.acmicpc.net/problem/3079 3079번: 입국심사 첫째 줄에 N과 M이 주어진다. (1 ≤ N ≤ 100,000, 1 ≤ M ≤ 1,000,000,000) 다음 N개 줄에는 각 심사대에서 심사를 하는데 걸리는 시간인 Tk가 주어진다. (1 ≤ Tk ≤ 109) www.acmicpc.net 이진탐색 문제 초기에 ed 값을 잘못 설정해서 시간초과가 났었다. 모든 입국심사를 최대시간이 걸리는 입국심사대에서 처리를 한다고 가정 시, 문제가 쉽게 풀렸음! n,m = map(int,input().split()) arr = [] for i in range(n): arr.append(int(input())) st = 0 ed = m * max(arr) result = 0 while.. 2023. 2. 18.
[파이썬]baekjoon 2156: 포도주 시식 https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net dp문제 해당 잔을 마실때 전과 전전경우를 확인하여 최댓값을 구하면 된다! N = int(input()) lst = [int(input()) for _ in range(N)] dp = [0] * N dp[0] = lst[0] if N > 1: dp[1] = lst[0] + lst[1] if N > 2: dp[2] = max(dp[1], lst[0] + lst[2], lst[1] + lst[2]) i.. 2023. 2. 16.
[파이썬]baekjoon 15810: 풍선 공장 https://www.acmicpc.net/problem/15810 15810번: 풍선 공장 1, 2, 3번 스태프가 각각 5분, 7분, 3분씩 걸린다면 3분이 지났을 때 3번 스태프가 1개, 5분에 1번 스태프가 1개, 6분에 3번 스태프가 1개를, 7분에 2번 스태프가 1개를, 9분에 3번 스태프가 1개를, 10분에 www.acmicpc.net 이진탐색 문제 걸리는 시간을 mid로 잡아 최소시간을 구하면 된다. 중간에 for문을 이용하여 몇개까지 만들어지는지 확인 한 후, 갯수가 많다면 시간을 줄이고, 갯수가 적다면 시간을 늘려서 결과값 도출! n,m = list(map(int,input().split())) arr = list(map(int,input().split())) st = 0 ed = ma.. 2023. 2. 16.
[파이썬]baekjoon 4446: ROT13 https://www.acmicpc.net/problem/4446 4446번: ROT13 간달프는 여러 종족의 언어를 꽤 오랜 시간 동안 공부했다. 최근에 간달프는 해커들이 사용하는 언어인 ROT13을 공부했다. 이 언어는 영어와 문법이 같지만, 알파벳의 순서를 어떤 규칙을 이용해 www.acmicpc.net 단순 구현문제이지만, 입력을 잘 읽어봐야한다. 입력이 여러 줄이 나오므로, 주어진 테스트케이스 외로 준비를 해야함 try except문을 이용하여 더이상 입력이 들어오지 않을때를 대비하였음! while True: try: t = list(input()) upper = [0]*len(t) for i in range(len(t)): if t[i].isupper(): t[i]=t[i].lower() up.. 2023. 2. 15.
[파이썬]baekjoon 6137: 문자열 생성 https://www.acmicpc.net/problem/6137 6137번: 문자열 생성 첫 번째 줄에 문자열 S의 길이 N이 주어진다. (N =80: print(result) result = '' print(result) 2023. 2. 15.
[파이썬]baekjoon 3187: 양치기 꿍 https://www.acmicpc.net/problem/3187 3187번: 양치기 꿍 입력의 첫 번째 줄에는 각각 영역의 세로와 가로의 길이를 나타내는 두 개의 정수 R, C (3 ≤ R, C ≤ 250)가 주어진다. 다음 각 R줄에는 C개의 문자가 주어지며 이들은 위에서 설명한 기호들이다. www.acmicpc.net bfs를 이용하여 울타리 내에 양과 늑대가 몇마리가 들어있는지 확인한다 visit 배열과 제어문을 이용하여 들어갔던 곳은 다시 들어가지 않고, 전체 울타리를 확인하면 된다! def bfs(start): global k, v q = deque() q.append(start) directy = [-1,1,0,0] directx = [0,0,-1,1] while q: nowy,nowx =q.. 2023. 2. 13.