codeforce ---------ピザ、ピザ、ピザ!!!

しろちゃん誕生日!彼女は彼女の誕生日を祝うために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;
}

`

164の元の記事が公開されました いいね112 訪問6769

おすすめ

転載: blog.csdn.net/qq_45772483/article/details/105477417