전체 글
-
[백준] 1149번 RGB거리 (파이썬)
1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 코드 n = int(input()) li = [] for i in range(n): x, y, z = map(int, input().split()) li.append([x,y,z]) for i in range(1,len(li)): li[i][0] = min(li[i-1][1], li[i-1][2]) + li[i][0] li[i][1] = min(li[i-1][0], li[i-1][2]) + li[i][1] li[i][2] = min(li[i..
-
[백준] 9461번 파도반 수열 (파이썬)
9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net 코드 import sys n = int(input()) li = list(sys.stdin.readline().rsplit() for i in range(n)) def count(l): base = [1,1,1,2,2,3] answer = 0 for i in range(5,l-1): answer = base[i] + base[i-4] base.append(answer) print(base[l-1]) for i in li: count(int(i[0]))
-
[백준] 9184번 신나는 함수 실행 (파이썬)
9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 코드 s = [[[0 for i in range(21)] for i in range(21)] for i in range(21)] def w(a,b,c): if a 20: return w(20,20,20) if s[a][b][c]: return s[a][b][c] if a < b and b < c: s[a][b][c] = w(a,b,c -1) + w(a, b-1, c-1) - w(a, b-1, c) return s[a][b][c] s[a][b][c] = w(a-1, ..
-
[백준] 1003번 피보나치 함수 (파이썬)
1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 코드 import sys n = int(input()) li = list(sys.stdin.readline().rsplit() for i in range(n)) def count(n): zero = [1,0,1] one = [0,1,1] for i in range(3,n+1): zero.append(zero[i-1]+zero[i-2]) one.append(one[i-1]+one[i-2]) print(zero[n],one[n]) for i in li: count(int(i[0]))
-
[백준] 13305번 주유소 (파이썬)
13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 코드 n = int(input()) length = list(map(int, input().split())) cost = list(map(int, input().split())) s = [0 for i in range(n)] low = cost[0] for i in range(n-1): if i == 0: s[i] = cost[i]*length[i] elif cost[i] < low: low = cost[i] s[i] = s[i-1] + low*le..
-
[백준] 1541번 잃어버린 괄호 (파이썬)
1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 코드 a = input().split('-') num = [] for i in a: cnt = 0 s = i.split('+') for j in s: cnt += int(j) num.append(cnt) n = num[0] for i in range(1,len(num)): n -= num[i] print(n)
-
[백준] 11399번 ATM (파이썬)
11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 코드 n = int(input()) li = list(map(int, input().split())) li = sorted(li) sum = 0 for i in range(n): a = 0 for j in range(0,i+1): a += li[j] sum += a print(sum)