需要注意的地方是:
Height After Climbing 大于井的高度时才算成功,Height After Climbing 和 Height After Sliding 小于等于0时才算失败,
而且“If the fatigue factor drops the snail's climbing distance below zero, the snail does not climb at all that day. Regardless of how far the snail climbed, it always slides D feet at night”(见原文),如果 Distance Climbed 小于0时,Height After Climbing 不再等于 Initial Height + Distance Climbed,而直接等于 Initial Height。
#include<stdio.h>
int main() {
int H, U, D, F;
while (scanf("%d%d%d%d", &H, &U, &D, &F) != EOF) {
if(!H)
break;
float IH = 0, DC = U, HAC = U, HAS = U - D;
int day = 1;
while(HAC <= H && HAC >= 0.0 && HAS >= 0.0) {
day++;
IH = HAS;
DC -= U*F/100.0;
if(DC < 0.0)
HAC = IH;
else
HAC = IH + DC;
HAS = HAC - D;
}
if(HAC > H)
printf("success on day %d\n", day);
else if(HAC < 0.0 || HAS < 0.0)
printf("failure on day %d\n", day);
}
return 0;
}
--------------------------------------------------------------------------------------------
Keep It Simple,Stupid!
--------------------------------------------------------------------------------------------

本文详细探讨了爬行动物在不同高度爬行与滑动的策略,包括它们如何调整疲劳因素来影响爬行距离,并在夜间进行滑动。通过程序模拟,展示了如何计算爬行高度与滑动距离,以及成功或失败的标准。

853

被折叠的 条评论
为什么被折叠?



