码迷,mamicode.com
首页 > 其他好文 > 详细

Ural1876(贪心)

时间:2015-03-07 11:37:41      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:

题目链接:点击打开链接


解题思路:

按照两个方面来贪:首先第一点,我们可以想到先将所有右脚的鞋子穿完,然后把所有剩余的右脚鞋子丢掉,最后穿够左脚即可。即b * 2 + 40;

第二点,我们先穿39个右脚的鞋子,然后穿40个左脚的鞋子,之后我们把所有剩下的左脚鞋子丢掉,最后再花1s时间穿1个右脚鞋子。即39 * 2 + 40  + 2 * (a - 40) + 1;

二者中取最大值即可。


完整代码:

#include <algorithm>
#include <iostream>
#include <cstring>
#include <climits>
#include <cstdio>
#include <string>
#include <cmath>
#include <map>
#include <queue>
using namespace std;
typedef long long LL;
const int MOD = int(1e9)+7;
const int INF = 0x3f3f3f3f;
const double EPS = 1e-9;
const double PI = acos(-1.0); //M_PI;

int main()
{
    #ifdef DoubleQ
    freopen("in.txt","r",stdin);
    #endif
    int a , b;
    while(cin >> a >> b)
    {
        int res = max( b * 2 + 40 , 119 + 2 * (a - 40) );
        cout << res << endl;
    }
}

更多精彩请访问:点击打开链接

Ural1876(贪心)

标签:

原文地址:http://blog.csdn.net/u013447865/article/details/44114277

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!