-문제: https://www.acmicpc.net/problem/5585

 

처음에 풀었던 문제와 동일한 문제 

 

-정답풀이:

n=int(input())
exchange=1000-n
s=[500,100,50,10,5,1]
cnt=0
for i in s:
    cnt += exchange//i
    exchange = exchange%i
print(cnt)

-6/24 풀이

n=1000-int(input())
coins = [500,100,50,10,5,1]
answer=0
for i in coins:
    quotient = n//i
    if quotient !=0:
        answer+= quotient
        n-= i*quotient
print(answer)

-문제: https://www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다

www.acmicpc.net

 

-정답풀이: 

 

  • 주어진 식을 최솟값으로 만들기 위해서는 '-'를 기준으로 나누면 된다.
  • '-'를 기준으로 식을 나누고
  • '+'가 있는 식들은 따로 더해주고
  • 마지막에 첫번째 수에서 하나씩 빼준다

 

 

참고한 블로그: https://pacific-ocean.tistory.com/228

 

[백준] 1541번(python 파이썬)

문제 링크: https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리

pacific-ocean.tistory.com

 

-문제: https://www.acmicpc.net/problem/1026

 

1026번: 보물

첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거

www.acmicpc.net

비교적 쉬웠던 문제

 

-정답풀이:

n= int(input())
data1=list(map(int,input().split()))
data2=list(map(int,input().split()))

data1.sort()
data2.sort(reverse=True)
answer=0
for i in range(n):
    answer+=(data1[i]*data2[i])
print(answer)

-문제: https://www.acmicpc.net/problem/1931

 

1931번: 회의실 배정

(1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다.

www.acmicpc.net

 

-정답 풀이:

 

  • 첫번째로 입력받은 수들을 정렬해야한다
  • 이때 회의 시작시간==종료시간인 경우가 있으므로 6번,7번 라인을 수행한다
  • 시작시간이 이전 회의의 종료시간보다 뒤에 있다면 회의 수 추가하고 끝나는 시간 변경하면 된다 

+ Recent posts