← 실전 문제

추가 발주량 계산

C++빈칸 채우기

창고에 있는 물품으로 주문을 처리하려고 해요. 물품 종류별 재고 stock과 주문 수량 requested가 주어져요. 어떤 종류의 재고가 주문 수량보다 부족하면 그 차이만큼 추가로 발주해요. 한 종류에 남는 재고를 다른 종류의 주문에 사용할 수는 없어요.

int solution(vector<int> stock, vector<int> requested)가 추가로 발주할 물품의 총수량을 반환하도록 빈칸을 채워 주세요. measure는 한 종류의 추가 발주 수량을 반환해요.

매개변수와 반환값

  • 두 벡터의 길이는 같고, 길이 n은 1 이상 500 이하예요.
  • 모든 재고와 주문 수량은 0 이상 1,000 이하의 정수예요.
  • 반환값은 추가 발주 수량의 합인 정수예요.

예시

  1. stock = [4, 2, 7], requested = [6, 2, 3]이면 2를 반환해요. 첫 종류에서 2개가 부족하고, 나머지 종류는 추가 발주가 필요 없어요.
  2. stock = [0, 5, 1], requested = [3, 8, 4]이면 9를 반환해요. 각 종류에서 3개씩 부족해요.

실행용 입출력

main은 함수 호출을 위한 입력 하네스예요. 첫 줄에 n, 둘째 줄에 재고 n개, 셋째 줄에 주문 수량 n개를 입력하고, 반환값 하나를 출력해요. 풀이 과제는 solution과 보조 함수의 빈칸이에요.

예시 입력

3
4 2 7
6 2 3

예상 결과

2

예시 입력

3
0 5 1
3 8 4

예상 결과

9
핵심 개념
  • array-1d: 같은 위치의 재고와 주문을 함께 읽어요.
  • function-design: 보조 함수의 인자 순서와 반환값을 확인해요.
  • conditionals: 부족한 경우와 남는 경우를 나눠요.
  • stl-vector: 주어진 벡터의 크기와 인덱스로 데이터를 읽어요.

코드 작성과 채점은 로그인 후 이용해요

로그인하고 풀기