转自<http://blog.csdn.net/xiaoke5881037/article/details/22307139>
//恶魔猎手尤迪安野心勃勃.他背叛了暗夜精灵,率深藏在海底的那加企图叛变:守望者在与尤迪安的交锋中遭遇了围杀.被困在一个荒芜的大岛上
//。为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去,到那时,岛上的所有人都会遇难:守望者的跑步速度,为17m/s,以
//这样的速度是无法逃离荒岛的。庆幸的是守望者拥有闪烁法术,可在1s内移动60m,不过每次使用闪烁法术都会消耗魔法值10点。守望者的魔法
//值恢复的速度为4点/s,只有处在原地休息状态时才能恢复。
//
//现在已知守望者的魔法初值M,他所在的初始位置与岛的出口之间的距离S,岛沉没的时间T。你的任务是写一个程序帮助守望者计算如何在最短
//的时间内逃离荒岛,若不能逃出,则输出守望者在剩下的时间内能走的最远距离。注意:守望者跑步、闪烁或休息活动均以秒(s)为单位。且每次
//活动的持续时间为整数秒。距离的单位为米(m)。
//提示:
//
//30%的数据满足: 1 <= t<= 10<>, 1 <=s<= 100 <> <=s<= 100 <><= t<= 10<>
//50%的数据满足: 1 <= t <= 1000<>, 1 <= s <= 10000<> <= s <= 10000<><= t <= 1000<>
//100%的数据满足: 1 <= t <= 300000<>, 0 <= m<=1000 1 <=s <= 10^8 <><= m<=1000 1 <=s <= 10^8 <><= t <= 300000<>
/*
功能:判断守望者是否能够逃出荒岛
输入参数:
unsigned int uiMagic:无符号整型,守望者的初始魔法值
unsigned int uiDistance:无符号整型,守望者所在的初始位置与岛出口之间的距离。
unsigned int uiSec:无符号整型,岛沉没需要的时间,单位为秒
输出参数(指针指向的内存区域保证有效):
char *pRstOut:输出守望者能否逃出荒岛,若能逃出输出“Yes”,不能输出“No”,注意大小写。
unsigned int *puiMaxDistance:若守望者能逃出荒岛,输出逃出荒岛所用的最短时间,
不能逃出则输出守望者能逃出的最大距离。
返回值:
void
*/
1、跑的人每秒都在跑
2、当闪烁的人发现能闪时就闪,并判断此时谁快,如果闪的快,这时候跑的人要和闪烁的人站到一个起跑线上继续跑
3、每秒都判断是否已经逃离岛
个人想法,欢迎指正:)
void HelpWatcherEscape(unsigned int uiMagic, unsigned int uiDistance, unsigned int uiSec, char *pRstOut, unsigned int *puiMaxDistance) { int m_iMagic = uiMagic; int m_iDistance = uiDistance; int m_iS = 0; //闪烁的人累计走过的距离 int m_iS2 = 0; //跑步的人累计走过的距离 for (int m_iTime = 1; m_iTime <= uiSec; m_iTime++) { if (m_iMagic >= 10) { m_iS += 60; m_iMagic -= 10; } else { m_iMagic += 4; } if (m_iS2 + 17 > m_iS) { m_iS2 += 17; } else { m_iS2 = m_iS; } if (m_iS2 >= m_iDistance) { strncpy(pRstOut,"Yes",sizeof("Yes")); *puiMaxDistance = m_iTime; break; } } if (m_iS2 < m_iDistance) { strncpy(pRstOut,"No",sizeof("No")); *puiMaxDistance = m_iS2; } }
相关推荐
守望者的逃离贪心解法,
守望者的逃离题解
守望者逃离,贪心算法守望者逃离,贪心算法守望者逃离,贪心算法
(用于改变时钟) 【2013.12月更新最新】守望者变速齿轮源代码(游戏加速辅助)
守望者gamewatch可能有点毒,不过我用了也没事,呵呵
ESET NOD32拥有先进的ThreatSense ®技术,可通过对恶意代码进行分析,实时侦测未知的病毒,让您时刻走在病毒编写者的前面。 最小的影响:ESET NOD32节约内存和硬盘上的资源,让它们为更重要的应用服务, 本软件只有...
文档守望者,公司文档加密软件,防止文件外泄...
欢迎使用 网络守望者,在一个窗口中实时监控多台计算机。 网络守望者是一个针对个人计算机的跨平台远程监控软件产品。该软件支持多种操作平台,可以使您从自己计算机上同时远程监视和控制多台计算机,内设卓越的...
守望者内核变速最新源码 ,采用最新内核方式全系统变速!
易语言守望者内核驱动变速源码,守望者内核驱动变速,加载驱动_,卸载驱动_,CTL_CODE,十六到十,取驱动句柄,NtQuerySystemInformation,LocalAlloc,LocalFree,SYSTEM_MODULE_INFORMATION,LoadLibraryEx,FreeLibrary,...
守望者上网行为和流量管理系统白皮书 流量管理 上网行为 enc100
如何管理好企业计算机与计算机信息...文档守望者正是为应对企业面临的这些问题而 开发。她集文件自动加密、网络监控、硬件监管、端口封锁、远程通讯等诸多功能于一 身,为企业提供了多方位一体化的反商业泄密解决方案。
提纲-麦田的守望者-论文.zip
黑爵ak52守望者机械键盘驱动是一款实用性很强的电脑键盘驱动软件,有了这款软件,用户就可以对键盘的灯光、宏编辑等进行修改,是拥有这款键盘的使用者必备驱动软件,大家快下载吧。功能特色支持外接键盘的无线蓝牙...
麦田守望者ESETNOD32集成ID 麦田守望者ESETNOD32集成ID
守望者 DLL Gwken.dll 守望者 DLL Gwken.dll 守望者 DLL Gwken.dll 守望者 DLL Gwken.dll 守望者 DLL Gwken.dll 守望者 DLL Gwken.dll 守望者 DLL Gwken.dll
守望者New源码完美编译源码1111111111111111111111
软件特色: 1、嵌入Word窗口界面进行朗读,保持了Word文档原貌。 2、从光标处开始朗读,方便用户控制朗读的节奏、流程。 3、支持双语朗读。 ...4、朗读按钮和设置菜单分离,避免误操作。...5、朗读的开始和停止按钮合一...