본문 바로가기
728x90

분류 전체보기88

[백준] 1940 - 연속합 Python https://www.acmicpc.net/problem/1912 import sys input = sys.stdin.readline N = int(input()) num = list(map(int, input().rstrip().split(" "))) dp = [0] * N dp[0] = num[0] for i in range(1, N): dp[i] = max(num[i], dp[i - 1] + num[i]) print(max(dp)) 2023. 6. 29.
[백준] 11660 - 구간 합 구하기 5 Python https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net import sys input = sys.stdin.readline graph = [] N, M = map(int, input().split(" ")) dp = [[0] * (N + 1) for _ in range(N + 1)] for i in range(N): A = list(map(int, input().rstrip().split(" "))) grap.. 2023. 6. 28.
[백준] 18428 - 감시 피하기 Python https://www.acmicpc.net/problem/18428 18428번: 감시 피하기 NxN 크기의 복도가 있다. 복도는 1x1 크기의 칸으로 나누어지며, 특정한 위치에는 선생님, 학생, 혹은 장애물이 위치할 수 있다. 현재 몇 명의 학생들은 수업시간에 몰래 복도로 빠져나왔는데, 복 www.acmicpc.net import sys input = sys.stdin.readline def backtracking(cnt): global flag if cnt == 3: if bfs(): flag = True return else: for i in range(N): for j in range(N): if graph[i][j] == "X": graph[i][j] = "O" backtracking(cnt +.. 2023. 6. 28.
[백준] 11053 - 가장 긴 증가하는 부분 수열 Python https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net import sys input = sys.stdin.readline N = int(input()) M = list(map(int, input().split(" "))) dp = [1] * N for i in range(N + 1): for j in range(i, N): if M[i] < M[j]: dp[j] = max.. 2023. 6. 27.
[백준] 5430 - AC Python https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net import sys from collections import deque t = int(input()) for i in range(t): p = sys.stdin.readline().rstrip() n = int(input()) arr = sys.stdin.readline().rstrip()[1:-1].split(",") queue = deque(arr) rev, front, back = 0, 0, len(queue)-1 flag = 0 if n == .. 2023. 6. 5.
[백준] 11727 - 2×n 타일링 2 Python https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net import sys input = sys.stdin.readline N = int(input()) dp = [0] * 1001 dp[1] = 1 dp[2] = 3 if N >= 3: for i in range(3, N + 1): dp[i] = dp[i - 1] + dp[i - 2] * 2 print(dp[N] % 10007) else: print(dp[N]) 2023. 6. 5.
728x90