본문 바로가기

파이썬9

[파이썬/Python]백준 2839번: 설탕 배달 https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 소스코드 n = int(input()) count = 0 while n > 0: if (n % 5 ==0): count += n//5 break elif (n < 3): count = -1 break n -= 3 count += 1 print(count) 풀이 이 문제는 그리디 알고리즘 문제로 먼저 입력받은 n이 5의 배수인지 확인 후 3보다 작지 않는다면 3을 뺀 후 다시 5의 배수인지 확인하는 반복문을 .. 2022. 11. 18.
[파이썬/Python] 백준 11047번: 동전0 https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 소스코드 n, k = map(int, input().split()) value = [] count = 0 for i in range(n): value.append(int(input())) value.reverse() for j in range(n): while (True): if (value[j] > k): break k -= val.. 2022. 11. 18.
[파이썬/Python] 백준 11399번: ATM 문제는 다음과 같다 https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 소스코드 n = int(input()) time = list(map(int, input().split())) time.sort() result = 0 sum = 0 for i in range (n): result = (time[i]+result) sum += result print(sum) 풀이 사람의 수를 먼저 입력받고 걸리는 시간은 list를 이용해 저장하였다. 필요한 시간의 합의 최솟값을 출력해야 하므.. 2022. 11. 16.
[파이썬/Python] 백준 8958번: OX퀴즈 문제는 다음과 같다. https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net T = int(input()) for i in range(T): score = 0 txt = input() for j in range(len(txt)): if txt[j] == 'O': score += 1 while (True): j -= 1 if j < 0: break if txt[j] == 'O': score += 1 else: break print(s.. 2022. 8. 12.
728x90