[Coding Test]
[백준] 11729 파이썬(python) : 하노이 탑 이동 순서
https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net *설명을 위해 앞자리 숫자로 번호추가 1 def hanoi_tower(n, start, to, end): 2 if n == 1: 3 print(start, end) 4 else: 5 hanoi_tower(n-1, start, end, to) #1 6 print(start, end) #2 7 hanoi_tower(n-1, to, start, end) #3 8 n = int(input()..
[백준] 2839 파이썬(python) : 설탕 배달 - (★)
https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 나의 풀이 n = int(input()) cnt = 0 while n > 0: if n % 5 == 0: cnt += n // 5 n = 0 break else: n -= 3 cnt += 1 if n < 0: break if n < 0: cnt = -1 print(int(cnt)) 다른 사람의 풀이 import sys sugar = int(sys.stdin.readline()) bag = 0 while su..
[백준] 13305 파이썬(python) : 주유소
https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net import sys n = int(sys.stdin.readline()) road = list(map(int, sys.stdin.readline().split())) city = list(map(int, sys.stdin.readline().split())) cost, res = city[0], 0 #1 for i in range(len(city)-1): #2 if cost > ci..
[백준] 11399 파이썬(python) : ATM
https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net import sys n = int(sys.stdin.readline()) time = list(map(int, sys.stdin.readline().split())) time.sort() #1 res, tmp = [], 0 for i in range(len(time)): tmp += time[i] #2 res.append(tmp) #3 print(sum(res)) #4 #1 : 입력받은 값 정렬 #2 : tmp변수는 입력값들을..
[백준] 1931 파이썬(python) : 회의실 배정 - (★)
https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net import sys n = int(sys.stdin.readline()) meeting = [ list(map(int, sys.stdin.readline().split())) for _ in range(n) ] #1 meeting.sort(key=lambda x : (x[1], x[0])) #2 res, endTime = 0, 0 #3 for i in range(len(meeting)): if endTime
[백준] 1541 파이썬(python) : 잃어버린 괄호 - (★)
1541번 : 잃어버린 괄호 추가 예제) 55-50+40-20 = -55 import sys equation = sys.stdin.readline().split('-') #1 res = 0 for first in equation[0].split('+'): #2 res += int(first) for part in equation[1:]: #3 for element in part.split('+'): #4 res -= int(element) print(res) #1 : 입력받은 문자열을 - 를 기준으로 인덱스를 나눈다. #2 : equation[0]이면 첫번째 - 가 나오기 전의 식. 그 첫번째 요소를 +로 또 나누어 int()변환 후 answer에 모두 더한다. #3 : 두번쨰 요소부터 모두 +를 기준으..