51nod 1534 棋子游戏

就看看波雷卡普能不能截住瓦西里的路。
如果xp<=xv&&yp<=yv,则波雷卡普一定能截住瓦西里,波雷卡普必胜,如果xp>xv&&yp>yv,则瓦西里必胜。然后剩下的情况,谁靠原点近谁就赢了。这个画画图,分析下他俩走的路就看出来了。如果波雷卡普更靠近原点,他一定能拦截住瓦西里,否则拦截不住。


//坐标靠近原点的肯定获胜
#include 
using namespace std;

int main()
{
    ios::sync_with_stdio(false);
    int xp,yp,xv,yv;
    cin >> xp >> yp >> xv >> yv;
    if(xp <= xv && yp <= yv)
        cout << "Polycarp" << endl;
    else if(xp > xv && yp > yv)
        cout << "Vasiliy" << endl;
    else//到达同一个点后,再到原点距离相同,所以比较哪个先到原点即可
    {
        if(xp+yp <= max(xv,yv)) cout << "Polycarp" << endl;
        else cout << "Vasiliy" << endl;
    }
    return 0;
}

你可能感兴趣的:(博弈)