しろちゃん誕生日!彼女は彼女の誕生日を祝うためにnnnの良い友達を招待しました。
祝うために、彼女は非常に大きなピザを取り出しました。彼女はこのピザをn + 1n + 1n + 1の部分にカットしたいと考えています(自分で食べたいと考えています)。これらのn + 1n + 1n + 1コピーには、同じサイズと形状が必要です。それで、シロは何本のナイフを切るべきでしょうか?
ps:ピザを切るときは、直線だけを切ることができ、ピザを積み重ねることはできません
0≤n≤10^ 18
実際、それは非常に単純です。法則を探してください
。n+ 1が奇数の場合、答えはn + 1です
。n+ 1が偶数の場合、答えは(n + 1)/ 2
です
が、n + 1を1と判断する必要があります。状況
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
typedef long long LL;
int main(){
LL n;
cin >> n ;
n ++;
if (n == 1) cout << 0 ;
else if (n & 1) cout << n ;
else cout << n / 2 ;
return 0;
}
`