카테고리 없음

[Silver II] 병든 나이트 - 1783

풀뿌리 2025. 2. 17. 23:35

[문제 위치]

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

 

[문제 풀이]

병든 나이트를 주어진대로 구현하여 그리디 알고리즘에 따라 각각 경우 최선을 선택하도록 구현하는 문제이다.

#include <iostream>

#include <algorithm>

using namespace std;



int N, M;



int main()

{

	ios_base::sync_with_stdio(false);

	cin.tie(0);



	cin >> N >> M;

	if (N == 1)

		cout << 1 << "\n";

	else if (N == 2)

		cout << min(4,(M-1)/2 + 1) << "\n";

	else

	{

		if (M >= 7)

			cout << M - 2 << "\n";

		else

			cout << min(4, M) << "\n";

	}

	return 0;

}