작성일 :

문제 링크

17284번 - Vending Machine

설명

5000원에서 버튼에 해당하는 금액을 차감한 뒤 남은 거스름돈을 구하는 문제입니다.

1번은 500원, 2번은 800원, 3번은 1000원입니다.


접근법

입력된 버튼을 순회하며 해당 가격을 차감합니다.

항상 예산 내에서 구매하므로 음수 검사는 필요 없습니다.


Code

C#

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;

class Program {
  static void Main() {
    var line = Console.ReadLine()!.Split(' ', StringSplitOptions.RemoveEmptyEntries);
    var rem = 5000;
    foreach (var p in line) {
      if (p == "1") rem -= 500;
      else if (p == "2") rem -= 800;
      else if (p == "3") rem -= 1000;
    }
    Console.WriteLine(rem);
  }
}

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <bits/stdc++.h>
using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  string line;
  if (!getline(cin, line)) return 0;
  stringstream ss(line);
  int rem = 5000;
  string token;
  while (ss >> token) {
    if (token == "1") rem -= 500;
    else if (token == "2") rem -= 800;
    else if (token == "3") rem -= 1000;
  }
  cout << rem << "\n";

  return 0;
}