๐Ÿ• Baaaaaarking/0x03๊ฐ• - ๋ฐฐ์—ด

[BOJ][C++] ๋ฐฑ์ค€ 13300๋ฒˆ: ๋ฐฉ ๋ฐฐ์ •

์„ ๋‹ฌ 2023. 4. 27. 23:28
๋ฐ˜์‘ํ˜•

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

 

13300๋ฒˆ: ๋ฐฉ ๋ฐฐ์ •

ํ‘œ์ค€ ์ž…๋ ฅ์œผ๋กœ ๋‹ค์Œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฒซ ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜ํ•™์—ฌํ–‰์— ์ฐธ๊ฐ€ํ•˜๋Š” ํ•™์ƒ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ N(1 ≤ N ≤ 1,000)๊ณผ ํ•œ ๋ฐฉ์— ๋ฐฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ธ์› ์ˆ˜ K(1 < K ≤ 1,000)๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌ๋˜์–ด

www.acmicpc.net

 

๋ฌธ์ œ

์ •๋ณด ์ดˆ๋“ฑํ•™๊ต์—์„œ๋Š” ๋‹จ์ฒด๋กœ 2๋ฐ• 3์ผ ์ˆ˜ํ•™์—ฌํ–‰์„ ๊ฐ€๊ธฐ๋กœ ํ–ˆ๋‹ค. ์—ฌ๋Ÿฌ ํ•™๋…„์ด ๊ฐ™์€ ์žฅ์†Œ๋กœ ์ˆ˜ํ•™์—ฌํ–‰์„ ๊ฐ€๋ ค๊ณ  ํ•˜๋Š”๋ฐ 1ํ•™๋…„๋ถ€ํ„ฐ 6ํ•™๋…„๊นŒ์ง€ ํ•™์ƒ๋“ค์ด ๋ฌต์„ ๋ฐฉ์„ ๋ฐฐ์ •ํ•ด์•ผ ํ•œ๋‹ค. ๋‚จํ•™์ƒ์€ ๋‚จํ•™์ƒ๋ผ๋ฆฌ, ์—ฌํ•™์ƒ์€ ์—ฌํ•™์ƒ๋ผ๋ฆฌ ๋ฐฉ์„ ๋ฐฐ์ •ํ•ด์•ผ ํ•œ๋‹ค. ๋˜ํ•œ ํ•œ ๋ฐฉ์—๋Š” ๊ฐ™์€ ํ•™๋…„์˜ ํ•™์ƒ๋“ค์„ ๋ฐฐ์ •ํ•ด์•ผ ํ•œ๋‹ค. ๋ฌผ๋ก  ํ•œ ๋ฐฉ์— ํ•œ ๋ช…๋งŒ ๋ฐฐ์ •ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

ํ•œ ๋ฐฉ์— ๋ฐฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ธ์› ์ˆ˜ K๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์กฐ๊ฑด์— ๋งž๊ฒŒ ๋ชจ๋“  ํ•™์ƒ์„ ๋ฐฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๋ฐฉ์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆ˜ํ•™์—ฌํ–‰์„ ๊ฐ€๋Š” ํ•™์ƒ์ด ๋‹ค์Œ๊ณผ ๊ฐ™๊ณ  K = 2์ผ ๋•Œ 12๊ฐœ์˜ ๋ฐฉ์ด ํ•„์š”ํ•˜๋‹ค. ์™œ๋ƒํ•˜๋ฉด 3ํ•™๋…„ ๋‚จํ•™์ƒ์„ ๋ฐฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฉ ๋‘ ๊ฐœ๊ฐ€ ํ•„์š”ํ•˜๊ณ  4ํ•™๋…„ ์—ฌํ•™์ƒ์—๋Š” ๋ฐฉ์„ ๋ฐฐ์ •ํ•˜์ง€ ์•Š์•„๋„ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

ํ•™๋…„์—ฌํ•™์ƒ๋‚จํ•™์ƒ
1ํ•™๋…„ ์˜ํฌ ๋™ํ˜ธ, ๋™์ง„
2ํ•™๋…„ ํ˜œ์ง„, ์ƒํฌ ๊ฒฝ์ˆ˜
3ํ•™๋…„ ๊ฒฝํฌ ๋™์ˆ˜, ์ƒ์ฒ , ์น ๋ณต
4ํ•™๋…„   ๋‹ฌํ˜ธ
5ํ•™๋…„ ์ •์ˆ™ ํ˜ธ๋™, ๊ฑด์šฐ
6ํ•™๋…„ ์ˆ˜์ง€ ๋™๊ฑด

์ž…๋ ฅ

ํ‘œ์ค€ ์ž…๋ ฅ์œผ๋กœ ๋‹ค์Œ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฒซ ๋ฒˆ์งธ ์ค„์—๋Š” ์ˆ˜ํ•™์—ฌํ–‰์— ์ฐธ๊ฐ€ํ•˜๋Š” ํ•™์ƒ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ N(1 ≤ N ≤ 1,000)๊ณผ ํ•œ ๋ฐฉ์— ๋ฐฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ธ์› ์ˆ˜ K(1 < K ≤ 1,000)๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌ๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N ๊ฐœ์˜ ๊ฐ ์ค„์—๋Š” ํ•™์ƒ์˜ ์„ฑ๋ณ„ S์™€ ํ•™๋…„ Y(1 ≤ Y ≤ 6)๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌ๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. ์„ฑ๋ณ„ S๋Š” 0, 1์ค‘ ํ•˜๋‚˜๋กœ์„œ ์—ฌํ•™์ƒ์ธ ๊ฒฝ์šฐ์— 0, ๋‚จํ•™์ƒ์ธ ๊ฒฝ์šฐ์— 1๋กœ ๋‚˜ํƒ€๋‚ธ๋‹ค. 

์ถœ๋ ฅ

ํ‘œ์ค€ ์ถœ๋ ฅ์œผ๋กœ ํ•™์ƒ๋“ค์„ ๋ชจ๋‘ ๋ฐฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ตœ์†Œํ•œ์˜ ๋ฐฉ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

ํ’€์ด

์„œ๋ธŒํ…Œ์Šคํฌ๋Š” ๊ทธ๋ƒฅ ๋ฌด์‹œ๊ฐ€๋Šฅํ•˜๋‹ค

#include <iostream>
#include <vector>

using namespace std;

int main() {
    vector<vector<int>>cnt(2, vector<int>(6, 0));

    int n,k;
    cin >> n >> k;
    int s,y;
    while(n--) {
        cin >> s >> y;
        cnt[s][y-1]++;
    }
    
    int tmp, ans=0;
    for(int i=0; i<2; i++) {
        for(int j=0; j<6; j++) {
            tmp = cnt[i][j];
            ans += tmp/k;
            if(tmp%k>0) ans++;
        }
    }
    
    cout << ans;
    
    return 0;
}
๋ฐ˜์‘ํ˜•