您的位置:首页 > 大数据 > 人工智能

codeforces 519C C. A and B and Team Training(枚举)

2015-08-19 11:39 302 查看

题目链接:

codeforces 519C

题目大意:

给出两种人的数目n和m,有两种组合方式,第一种2:1,第二种是1:2,问只用这两种组合方式得到最多的组合数。

题目分析:

枚举其中一种组合方式的数量,然后算出另一种组合方式的数量。

AC代码:

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>

using namespace std;

int n,m;
const int MAX = 5*1e5;

int main ( )
{
    while ( ~scanf ( "%d%d" , &n , &m ) )
    {
        int ans = 0;
        for ( int i = 0 ; i <= MAX ; i++ )
        {
            if( 2*i > n ) break;
            if ( i > m ) break;
            int x = n -2*i;
            int y = m - i;
            ans = max ( ans , i+min(x,y/2));
        }
        printf ( "%d\n" , ans );
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: