HDU2149Public Sale(Bash 博弈)

题意:(略)

解题思路:

             又是一道Bash博弈,直接水过吧。。不过这道题要求说当先手有可以开多个价(必胜点)时,要将这些数全都输出。其实出现这种情况只有一种可能,那就是当商品的总价值少于每次你可以开的价值时才有多个必胜点,那么加一条判断语句不就秒杀掉了额么?

代码:

#include<iostream> 
using namespace std; 
int main(void

    int total,price; 
    while(scanf("%d%d",&total,&price)==2
    { 
        if(total<=price)//能够标多个价的,除非总价比每次出的价要小 
        { 
            while(total<price) 
            { 
                cout<<total<<" "
                total++; 
            } 
            cout<<total<<endl; 
        } 
        else  
        { 
            if(total%(price+1)) 
            { 
                cout<<total%(price+1)<<endl; 
            } 
            else 
            { 
                cout<<"none"<<endl; 
            } 
        } 
    } 
    return 0

 
原文地址:https://www.cnblogs.com/cchun/p/2520137.html