题目描述

小石和小阳玩游戏,一共有 nn 个数,分别为 1∼n1∼n 。两人轮流取数,小石先手。对于每轮取数,都必须选择剩下数中的任意一个数 xx,同时还要取走 x,⌊x2⌋,⌊⌊x2⌋2⌋…x,⌊x2⌋,⌊⌊x2⌋2⌋… 如果某个数不存在,就停止取数(不能一个数都不取)。谁取走最后一个数,谁就输了。小石想知道自己能否获胜。 如果小石能赢,输出 “Shi”,否则输出 "Yang”(均不输出引号)。

 

输入描述:

共一行,输入一个数 nn 。

输出描述:

共一行,输出 "Shi""Yang"(不输出引号)。

示例1

输入

复制

1

输出

复制

Yang

说明

小石只能取走 11,小阳赢。

示例2

输入

复制

2

输出

复制

Shi

说明

若小石取走 11,则小阳只能取走 22,小石赢。

备注:

1≤n≤109

解题思路:

刚开始以为是奇偶性判断,结果case通过率只有90%,后来发现只要是先手就可以获胜(枚举了好几个数,除了1)

import java.math.BigInteger;
import java.util.Arrays;
import java.util.Scanner;
import java.util.Stack;
import java.util.Vector;

public class test {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        Long n=scan.nextLong();
        if(n==1)
            System.out.println("Yang");
        else
            System.out.println("Shi");
    }
}