fzu 2221 Running man 数学 思维

思路:

在给定两队人数的情况下,三局两胜制,相同人数下runningman获胜,无论对手怎么安排,问runningman会不会胜利。

假设对方的人数是m,分为奇数偶数两种情况讨论。

极端情况下,对方用0去对待runningman人数最多的一次。剩下两局中runningman要赢一局。

对方安排  --- 0 , x , y ,x>=y.

man        --- a , b , c ,a>=b>=c.

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <queue>
#include <vector>
#include <cmath>
#include <stack>
#include <iostream>
using namespace std;

int main(void)
{
    int T, n, m;
    cin >> T;
    while (T--){
        cin >> n >> m;
        if ( m%2==1&& n>=(m/2)*3 || m%2==0 && n>=(m/2)*3-1 ) cout<<"Yes"<<endl;
        else cout<<"No"<<endl;
    }

    return 0;
}

(x,y)对应的情况是(1,m-1),(2,m-2),...,(m/2,m/2) ,那么abc的就是(m/2,m/2,m/2-1) 可以是最少的人数保证胜利。

m为奇数的时候也可以对应分析出来是 (m/2,m/2,m/2) 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值