Enjoy the game

这真的只是一道规律题

我找到规律了但是因为数据太大了我超时了

于是我开始找办法前前后后换了很多种最后还是不行,

很郁闷,大家做了很多道题,我总是这样,还是太菜了

但是我相信坚持一定能成功。

我们现在来看一下这道题

 

牛牛战队的三个队员在训练之余会自己口胡了一些题当做平时的益智游戏。有一天牛可乐想出了一个小游戏给另外两名队员玩,游戏规则如下:

  • 初始一共有n张卡牌
  • 先手第一步最少要拿1张牌,最多要拿n−1张牌。
  • 接下来每一步,双方最少要拿1张牌,最多拿等同于上一步对方拿的牌数的牌。
  • 拿走最后一张牌的人将取得游戏的胜利。

你作为旁观者,看着他们玩的很开心,想参与到这场游戏中来,赌一赌谁会能赢。

大家一定会了吧,呜呜呜

贴一下我的垃圾代码这是不对的大家不要模仿!!!!

#include<iostream>
#include<algorithm>
#include<cmath>

using namespace std;

int main()
{
    int n;
    cin >> n;
    for(int i=2;i<=n;i*=2)
    {
        if(i==n)
        {
            cout << "Alice";
            return 0;
        }
    }
    cout << "Bob";
    return 0;
 } 

再来看看AC代码:

#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    long long n;
    scanf("%lld", &n);
    long long tmp = 2;
    for (int i = 1; i <= 60; i++)
    {
        if (tmp == n)
        {
            printf("Alice\n");
            return 0;
        }
        tmp = tmp * 2;
    }
    printf("Bob\n");
    return 0;

我感觉你在,你在无中生有,暗度陈仓,凭空想象,凭空捏造,…¥%#…¥#*()*()&*&!#@!

猜你喜欢

转载自www.cnblogs.com/zust-lms/p/12304577.html