NOIP 2007 守望者的逃离

传送门:
https://ac.nowcoder.com/acm/contest/235/C

/*
这道题实际上是……动规+贪心
用10魔法能移动60m  显然用魔法是最快的
但是魔法值不够呢(伤心
那就对休息或者跑步进行选择
*/
#include <iostream>
#include <algorithm>
using namespace std;

int f[300010];//放多一点  同时放外面就不要memset了
int main()
{
    int m, s, t;//这个就不用注释了吧(坏笑
    cin >> m >> s >> t;//输入
    f[0] = 0;
    for (int i = 1; i <= t; i++)
    {
        if (m >= 10)//可以用魔法
        {
            f[i] = f[i - 1] + 60;//闪烁法术
            m -= 10;//魔法减少
        }
        else//魔法不够用了(悲催
        {
            f[i] = f[i - 1];//先休息吧
            m = m + 4;//恢复魔力(太棒了
        }
    }
    for (int i = 1; i <= t; i++)
    {
        f[i] = max(f[i], f[i - 1] + 17);
        if (f[i] >= s)
        {
            cout << "Yes" << endl;//"我跑出来了!",守望者欢呼
            cout << i << endl;
            return 0;//守望者,再见,GoodLuckToYou
        }
    }
    //难道没有逃出来?
    cout << "No" << endl;//(悲催
    cout << f[t] << endl;
    return 0;//守望者Goodbye
}
全部评论
弱弱地问一句是普及组的吗?
点赞 回复 分享
发布于 2019-08-24 13:10

相关推荐

不愿透露姓名的神秘牛友
05-29 20:12
点赞 评论 收藏
分享
06-17 00:26
门头沟学院 Java
程序员小白条:建议换下项目,智能 AI 旅游推荐平台:https://github.com/luoye6/vue3_tourism_frontend 智能 AI 校园二手交易平台:https://github.com/luoye6/vue3_trade_frontend GPT 智能图书馆:https://github.com/luoye6/Vue_BookManageSystem 选项目要选自己能掌握的,然后最好能自己拓展的,分布式这种尽量别去写,不然你只能背八股文了,另外实习的话要多投,尤其是学历不利的情况下,多找几段实习,最好公司title大一点的
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务