课间十分钟

2018-11-04  本文已影响121人  续袁

时间限制 1000 ms
内存限制 128 MB
题目描述
两人都是数学爱好者,便发明了一个游戏。
在游戏开始前,他们先约定一个正整数n,同时令m=1。游戏过程中,每个人都可以将m的值扩大2到9中的任意倍数。第一个使m≥n的人就是最后的赢家。
181818181818和ZBT都十分聪明,并且游戏过程中都使用最佳的策略,问谁会是最后的赢家。(181818181818总是第一个先玩)

输入:一个正整数n(1≤n≤2^32-1)

输出:在使用最佳的策略的情况下,如果181818181818必胜,则输出“181818181818”。如果ZBT必胜,则输出“ZBT”。

输入数据
输出数据
样例输入
9
样例输出
181818181818
样例说明
找规律吧!

#include<stdio.h>
#include <iostream>
#include<string>
#include<math.h>
using namespace std;

long n;
int main()
{
    cin >>n;
    int flag = 0;
    long mul = 1;
    for (int i = 0;;i++) {
        if(i>0) mul = 18 * mul;
        if (n > (9 *mul) && n <= (18*mul)) { 
            flag = 1;
            cout << "ZBT" << endl;
            return 0;
        }
        if (n > (18 * mul) && n <= (9 * 18 * mul)) {
            cout << "181818181818" << endl;
            return 0;
        }
    }
        
}
上一篇下一篇

猜你喜欢

热点阅读