Algorithm/๋ฐฑ์ค€(BOJ)

[๋ฐฑ์ค€ BOJ / C++] 5585๋ฒˆ: ๊ฑฐ์Šค๋ฆ„๋ˆ ํ’€์ด

meeeeejin 2020. 12. 28. 20:04

๋ฌธ์ œ

 

<๋ฌธ์ œ>

ํƒ€๋กœ๋Š” ์ž์ฃผ JOI์žกํ™”์ ์—์„œ ๋ฌผ๊ฑด์„ ์‚ฐ๋‹ค. JOI์žกํ™”์ ์—๋Š” ์ž”๋ˆ์œผ๋กœ 500์—”, 100์—”, 50์—”, 10์—”, 5์—”, 1์—”์ด ์ถฉ๋ถ„ํžˆ ์žˆ๊ณ , ์–ธ์ œ๋‚˜ ๊ฑฐ์Šค๋ฆ„๋ˆ ๊ฐœ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ์ ๊ฒŒ ์ž”๋ˆ์„ ์ค€๋‹ค. ํƒ€๋กœ๊ฐ€ JOI์žกํ™”์ ์—์„œ ๋ฌผ๊ฑด์„ ์‚ฌ๊ณ  ์นด์šดํ„ฐ์—์„œ 1000์—” ์ง€ํ๋ฅผ ํ•œ ์žฅ ๋ƒˆ์„ ๋•Œ, ๋ฐ›์„ ์ž”๋ˆ์— ํฌํ•จ๋œ ์ž”๋ˆ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. 

์˜ˆ๋ฅผ ๋“ค์–ด ์ž…๋ ฅ๋œ ์˜ˆ 1์˜ ๊ฒฝ์šฐ์—๋Š” ์•„๋ž˜ ๊ทธ๋ฆผ์—์„œ ์ฒ˜๋Ÿผ 4๊ฐœ๋ฅผ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค.

 

<์ž…๋ ฅ>

์ž…๋ ฅ์€ ํ•œ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ํƒ€๋กœ๊ฐ€ ์ง€๋ถˆํ•  ๋ˆ(1 ์ด์ƒ 1000 ๋ฏธ๋งŒ์˜ ์ •์ˆ˜) 1๊ฐœ๊ฐ€ ์“ฐ์—ฌ์žˆ๋‹ค.

 

<์ถœ๋ ฅ>

์ œ์ถœํ•  ์ถœ๋ ฅ ํŒŒ์ผ์€ 1ํ–‰์œผ๋กœ๋งŒ ๋˜์–ด ์žˆ๋‹ค. ์ž”๋ˆ์— ํฌํ•จ๋œ ๋งค์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค.

 

 

www.acmicpc.net/problem/5585

 

5585๋ฒˆ: ๊ฑฐ์Šค๋ฆ„๋ˆ

ํƒ€๋กœ๋Š” ์ž์ฃผ JOI์žกํ™”์ ์—์„œ ๋ฌผ๊ฑด์„ ์‚ฐ๋‹ค. JOI์žกํ™”์ ์—๋Š” ์ž”๋ˆ์œผ๋กœ 500์—”, 100์—”, 50์—”, 10์—”, 5์—”, 1์—”์ด ์ถฉ๋ถ„ํžˆ ์žˆ๊ณ , ์–ธ์ œ๋‚˜ ๊ฑฐ์Šค๋ฆ„๋ˆ ๊ฐœ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ์ ๊ฒŒ ์ž”๋ˆ์„ ์ค€๋‹ค. ํƒ€๋กœ๊ฐ€ JOI์žกํ™”์ ์—์„œ ๋ฌผ๊ฑด์„ ์‚ฌ

www.acmicpc.net

 

 

 

๋ฌธ์ œ ํ’€์ด

 

Greedy(ํƒ์š• ๋ฒ•) ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์ž”๋ˆ์˜ ์•ก์ˆ˜๊ฐ€ ํฐ ๋™์ „๋ถ€ํ„ฐ ์ตœ๋Œ€ํ•œ ๋งŽ์ด ๊ฑฐ์Šฌ๋Ÿฌ์ค€๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์ตœ์†Œ ๋™์ „์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

change์— ๊ฑฐ์Šค๋ฆ„๋ˆ์„ ์ €์žฅํ•˜๊ณ , 500์—”, 100์—” 50์—”, 10์—”, 5์—” ์ˆœ์„œ๋Œ€๋กœ ๊ฑฐ์Šฌ๋Ÿฌ์ค„ ์ˆ˜ ์žˆ๋Š” ๋™์ „์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜์—ฌ answer์— ๋”ํ•ฉ๋‹ˆ๋‹ค. ๊ฑฐ์Šฌ๋Ÿฌ์ค€ ๋’ค์˜ change๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•œ ๋’ค(๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ) ๋‹ค์Œ ๋™์ „์— ๋Œ€ํ•œ ๊ณ„์‚ฐ์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. 1์—”์€ ๋‹จ์ˆœํžˆ ๋‚จ์€ change๋ฅผ ๋”ํ•ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

 

์†Œ์Šค์ฝ”๋“œ

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// 5585๋ฒˆ: ๊ฑฐ์Šค๋ฆ„๋ˆ
#include <iostream>
 
using namespace std;
 
int main() {1
    ios::sync_with_stdio(false);
    cin.tie(NULL);
 
    int change, answer = 0;
    cin >> change;
    change = 1000 - change;
    
    answer += change / 500;
    change %= 500;
 
    answer += change / 100;
    change %= 100;
 
    answer += change / 50;
    change %= 50;
 
    answer += change / 10;
    change %= 10;
 
    answer += change / 5;
    change %= 5;
 
    answer += change;
 
    cout << answer << "\n";
 
    return 0;
}
cs

 

 

 

 

 

 

 

๊ณต๋ถ€ํ•œ ๊ฒƒ์„ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ˆ˜์ •ํ•  ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ์•Œ๋ ค์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค :)

 

 

728x90