컴공생의 다이어리
만들 수 없는 금액 본문
질문
동네 편의점의 주인인 동빈이는 N개의 동전을 가지고 있습니다. 이때 N개의 동전을 이용하여 만들 수 없는 양의 정수 금액 중 최솟값을 구하는 프로그램을 작성하세요.
구현한 코드
아래는 파이썬으로 구현한 코드이다.
N=int(input())
coin=list(map(int,input().split()))
coin.sort()
target=1
for x in coin:
if target>=x:
target+=x
else:
break
print(target)
아래는 c/c++으로 구현한 코드이다.
#include<iostream>
#include<algorithm>
int main() {
int N;
int target = 1;
std::cin >> N;
int* coin = new int[N];
for (int i = 0; i < N; i++) {
std::cin >> coin[i];
}
std::sort(coin, coin + N);
for (int i = 0; i < N; i++) {
if (target >= coin[i]) {
target += coin[i];
}
else break;
}
std::cout << target;
return 0;
}
www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791162243077
728x90
'Development > Algorithm & Coding Test' 카테고리의 다른 글
[프로그래머스] Greedy - 체육복 (0) | 2020.12.18 |
---|---|
볼링공 고르기 (0) | 2020.12.18 |
문자열 뒤집기 (0) | 2020.12.18 |
곱하기 혹은 더하기 (0) | 2020.12.18 |
모험가 길드 (0) | 2020.12.18 |
Comments