본문 바로가기
반응형

백준224

[BOJ][Python]2491번 풀이 https://www.acmicpc.net/problem/2491 2491번: 수열 0에서부터 9까지의 숫자로 이루어진 N개의 숫자가 나열된 수열이 있다. 그 수열 안에서 연속해서 커지거나(같은 것 포함), 혹은 연속해서 작아지는(같은 것 포함) 수열 중 가장 길이가 긴 것을 찾 www.acmicpc.net n = int(input()) num = list(map(int, input().split())) inc = 1 dec = 1 tmp = 1 for i in range(len(num)-1): if num[i] = num[i+1]: tmp += 1 else: dec = max(dec, tmp) tmp = 1 dec = max(dec, tmp) print(max(inc, dec)) 어렵진 않았는데 재밌다.. 2022. 7. 11.
[BOJ][Python]10026번 풀이 https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net from collections import deque import sys ssr = sys.stdin.readline def sol(): for i in range(n): for j in range(n): if visited[i][j] == 0: q.append((i,j)) visited[i][j] = 1 c = t[i][j] while q: tmp = q.popleft() for k in.. 2022. 7. 11.
[BOJ][Python]1783번 풀이 https://www.acmicpc.net/problem/1783 1783번: 병든 나이트 첫째 줄에 체스판의 세로 길이 N와 가로 길이 M이 주어진다. N과 M은 2,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net n,m = map(int, input().split()) if n >= 3: if m >= 7: print(m-2) elif m >= 4: print(4) else: print(m) elif n == 2: if m >= 7: print(4) else: print(1+(m-1)//2) else: print(1) 이번에는 구현 문제인데요. 느낌이 그리디랑 비슷한 문제입니다. 뭔가 수학적인 계산을 하는 문제라기 보다는 논리적 추론에 가까운 문제가 아닌가 생각합니다. .. 2022. 7. 10.
[BOJ][Python]7569번 풀이 https://www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net from collections import deque import sys ssr = sys.stdin.readline m,n,h = map(int, ssr().split()) t = [[list(map(int, ssr().split())) for _ in range(n)] for _ in range(h)] q = deque([]) dp=[(-1,0,0), (1,0,0), (.. 2022. 7. 10.
[BOJ][Python]5430번 풀이 https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net from collections import deque import sys ssr = sys.stdin.readline t = int(ssr()) for _ in range(t): p = ssr().rstrip() n = int(ssr()) state = 1 if n == 0: num = ssr().rstrip() num = deque([]) else: num = ssr().rstrip() num = deque(num[1:-1].split(',')) fo.. 2022. 7. 9.
[BOJ][Python]11403번 풀이 https://www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net import sys ssr = sys.stdin.readline sys.setrecursionlimit(10000) def sol(r,c,start): if visited[r][c] == 1: g[start][c] = 1 g[r][c] = 1 return visited[r][c] = 1 visited[c][r] = 1 g[start][c] = 1 g[r][c] = 1 for i in range(n): if g[c][i] == 1: sol(.. 2022. 7. 8.
[BOJ][Python]2578번 풀이 https://www.acmicpc.net/problem/2578 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net import sys ssr = sys.stdin.readline def sol(): for i in range(5): for j in range(5): for k in range(5): for l in range(5): if t[k][l] == n[i][j]: check[k] += 1 check[l+5] += 1 if k+l == 4: check[11] += 1 if k==l: check[10] += 1 if .. 2022. 7. 7.
[BOJ][Python]11286번 풀이 https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net import heapq import sys ssr = sys.stdin.readline n = int(ssr()) h=[] for _ in range(n): o = int(ssr()) if o == 0: if len(h) != 0: print(heapq.heappop(h)[1]) else: print(0) else: heapq.heappush(h, (abs(o), o)) 지난.. 2022. 7. 7.
[BOJ][Python]6064번 풀이 https://www.acmicpc.net/problem/6064 6064번: 카잉 달력 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성된다. www.acmicpc.net t = int(input()) for _ in range(t): m,n,x,y = map(int, input().split()) a,b = 0,0 ans = 0 for i in range(m+abs(m-n)): if (i*m+x-1)%n == y-1: ans = i*m+x break if ans == 0: print(-1) else: print(ans) 오늘은 열대야 때문에 잠을 계속 설치다가 그냥 .. 2022. 7. 6.
[BOJ][Python]5525번 풀이 https://www.acmicpc.net/problem/5525 5525번: IOIOI N+1개의 I와 N개의 O로 이루어져 있으면, I와 O이 교대로 나오는 문자열을 PN이라고 한다. P1 IOI P2 IOIOI P3 IOIOIOI PN IOIOI...OI (O가 N개) I와 O로만 이루어진 문자열 S와 정수 N이 주어졌을 때, S안에 PN이 몇 www.acmicpc.net def check(): global state, start cnt = 0 while start < m: if state == 1: if s[start] == 'I': state = 0 start += 1 cnt += 1 else: start += 1 return cnt else: if s[start] == 'O': state = .. 2022. 7. 5.
반응형