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

[백준] 19941. 햄버거 분배 (2020 정올 중등 1번) <C++>

by 코드 이야기 2020. 9. 23.
728x90

www.acmicpc.net/problem/19941

 

19941번: 햄버거 분배

기다린 벤치 모양의 식탁에 사람들과 햄버거가 아래와 같이 단위 간격으로 놓여 있다. 사람들은 자신의 위치에서 거리가 $K$ 이하인 햄버거를 먹을 수 있다. 햄버거 사람 햄버거 사람 햄버거 사��

www.acmicpc.net

 

 

나의 풀이 

 

0 ~ N-1 까지 가면서 사람이 나온다면 

 

사람을 기준으로

 

k번만큼 왼쪽 ~ k번만큼 오른쪽까지 보면서 햄버거가  있다면 먹는다.

 

 

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
#include <iostream>
#include <string>
using namespace std;
 
int main() {
  string arr;
  int n, k, cnt=0, sw;
 
  cin >> n >> k;
  cin >> arr;
  
  for(int i=0; i<n; i++) {
    if(arr[i]!='P') continue;
 
    for(int j=i-k; j<=+ k; j++) {
      if(0 <= j && j < n && arr[j] == 'H') {
        arr[j]='-';
        cnt++;
        break;
      }
    }
  }
 
  cout <<cnt;
}
cs

 

728x90

댓글