๐Ÿ•๏ธ ICPC Sinchon/Greedy

[๋ฐฑ์ค€][C++/C์–ธ์–ด] 5585๋ฒˆ : ๊ฑฐ์Šค๋ฆ„๋ˆ

์„ ๋‹ฌ 2021. 2. 8. 06:54
๋ฐ˜์‘ํ˜•
์‹œ๊ฐ„์ด.. ์ •๋ง.. ์˜ค๋ž˜๊ฑธ๋ ธ๋‹ค....... ๋‹ค์งœ๊ณ ์งœ ๊ทธ๋ฆฌ๋””์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€๊ฒ ๋‹ค๊ณ  ๋ฐฑ์ค€ ๋ชฉ๋ก๋งŒ๋“ค๊ณ ,, ์ ค์‰ฌ์šด๊ฑฐ๋ถ€ํ„ฐ ๋„์ „ํ•˜๋Š”๋ฐ ์•ˆํ’€๋ ค์„œ ใ„นใ…‡ ๋„ˆ๋ฌด ์†์ƒํ–ˆ์Œ,, ์•„๋ฌด๊ฑฐ๋‚˜ ์ด์ค‘ ํ•˜๋‚˜ ํ’€๊ณ  ์ž๊ฒ ๋‹ค๊ณ  ๋งˆ์Œ๋จน์Œ = ๋ฐค์ƒ˜ ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ ํ•˜๋‚˜ํ’€๋‹ค๊ฐ€ ๋ฐค์ƒ˜ ใ… ใ… 

1๋…„๋งŒ์— ๋Œ์•„์™€์„œ ๋‹ค์‹œ ํ’€์—ˆ๋‹ค.

https://www.acmicpc.net/problem/5585

 

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

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

www.acmicpc.net

๋ฌธ์ œ

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

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

์ž…๋ ฅ

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

์ถœ๋ ฅ

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

 

ํ’€์ด

// Authored by : seondal
// Co-authored by : -

// #include <bits/stdc++.h>
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false); cin.tie(NULL);
    
    int n;
    cin >> n;
    
    int charge = 1000 - n;
    int cnt = 0;
    while(charge > 0) {
        if(charge >= 500)
            charge -= 500;
        else if(charge >= 100)
            charge -= 100;
        else if(charge >= 50)
            charge -= 50;
        else if(charge >= 10)
            charge -= 10;
        else if(charge >= 5)
            charge -= 5;
        else if(charge >= 1)
            charge -= 1;
        
        cnt++;
    }
    
    cout << cnt;
    
    return 0;
}

/*
 */

 

1๋…„ ์ „์˜ ํ’€์ด

#include <stdio.h>

int main(){
    int n;
    scanf("%d",&n);
    int ch = 1000-n;
    int x=0;
    
    for(; ch>=500;){
        ch = ch - 500;
        x++;
    }
    for(; ch>=100;){
        ch = ch - 100;
        x++;
    }
    for(; ch>=50;){
        ch = ch - 50;
        x++;
    }
        for(; ch>=10;){
        ch = ch - 10;
        x++;
    }
        for(; ch>=5;){
        ch = ch - 5;
        x++;
    }
        for(; ch>=1;){
        ch = ch - 1;
        x++;
    }
    
    printf("%d",x);
}
๋ฐ˜์‘ํ˜•