숫자 n이 있다고 가정합니다. Amal은 Bimal에게 몇 개의 스톤을 주고 그는 한 번 이상 스톤을 주지만, Amal이 k개의 스톤을 제공하면 한 번의 이동에서 Amal이 k개의 스톤을 줄 수 없으므로 한 번의 이동에서 주어진 스톤은 이전 이동과 달라야 합니다. Amal이 Bimal에게 돌을 줄 수 있는 횟수를 계산해야 합니다.
따라서 입력이 n =4와 같으면 출력은 3이 됩니다. 왜냐하면 1개의 스톤, 2개의 스톤, 다시 1개의 스톤이 있기 때문입니다.
단계
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
return (n * 2 + 1) / 3
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
#include <bits/stdc++.h> using namespace std; int solve(int n){ return (n * 2 + 1) / 3; } int main(){ int n = 4; cout << solve(n) << endl; }
입력
4
출력
3