백준 2828 사과 담기 게임 C++

백준 2828 사과 담기 게임.

백준 2828번 "사과 담기 게임" 문제의 자세한 내용은 글 하단의 문제 링크를 참고하세요.

2828번 문제에 주어지는 입력 및 예시

입력: 

5 1
3
1
5
3

출력:

6

코드

백준 2828번 "사과 담기 게임" 문제의 코드입니다.

#include <bits/stdc++.h>
using namespace std;
int main() {
	int pos,n,m,k,result=0,right,left=1;
	cin>>n>>m>>k; //맵, 바구니, 개수.  
	for(int i=0;i<k;i++){
		right=left+m-1; //바구니의 오른쪽. 
		cin>>pos;//떨어지는 위치. 
		if(pos>=left&&pos<=right) continue;
		else{
			if(pos<left){//왼쪽에서 떨어질때. 
				result+=left-pos;
				left=pos;
			}
			else{//오른쪽에서 떨어질때. 
				result+=pos-right;
				left=pos-m+1;
			}
		}
	}
	cout<<result<<"\n";
	return 0;
}

실행

위의 코드를 예제의 입력을 넣어 실행했을 때의 결과입니다.

 

'C' 카테고리의 다른 글

백준 13701 중복 제거 C++  (0) 2023.04.12
백준 15719 중복된 숫자 C++  (0) 2023.04.12
백준 1992 쿼드 트리 C++  (0) 2023.04.11
백준 10814 나이순 정렬.  (0) 2023.04.11
백준 10828 스택 C++  (0) 2023.04.11

Designed by JB FACTORY