본문 바로가기
알고리즘 문제/그리디

[개쉬운 풀이] 백준 19941 햄버거 분배 CPP (17일차)

by odaebum 2024. 12. 8.
728x90

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

문제

생각

1. 현재 학생들이 먹을 수 있는 햄버거를 그리디 형식으로 해결했다.

2. 같은 방향으로 먹으면 최대치로 먹을 수 있다.

풀이

 

#include <iostream>
#include <vector>

using namespace std;

const int MAX = 20001;

int N, K;
vector<char> v;


void input(){
    cin >> N >> K;
    v = vector<char>(N);
    for(int i = 0; i < N; i++){
        cin >> v[i];
    }
}

void print(){
    for(int i = 0; i < N; i++){
        cout << v[i];
    }
}

void sol(){
    int answer = 0;
    for(int i = 0; i < N; i++){
        if(v[i] != 'P') continue;
        for(int p = i-K; p <= i+K; p++){
            if(p < 0 || p >= N) continue;
            if(v[p] == 'H'){
                v[p] = '.';
                answer++;
                break;
            }
        }
    }
    cout << answer << endl;
}

int main(){
    input();
    sol();
    return 0;
}
728x90

'알고리즘 문제 > 그리디' 카테고리의 다른 글

[개쉬운 풀이] 백준 2212 센서 (CPP/C++)  (0) 2024.03.04