#include <stdio.h>
#define bas 20.0
#include<math.h>
int main() {
float a;
char b;
scanf("%f %c",&a,&b);
float jj,res;
if(b=='y')
jj=5.0;
else
jj=0.0;
if(a<=1)
res=bas+jj;
else{
if(fmod(a,1)==0.0)
res=bas+(a-1)*1+jj;
else
res=bas+(a-fmod(a,1)-1+1)+jj; //a-fmod(a.1)可以将小数部分除去
}
printf("%.0f",res);
return 0;
}
本题的难点在于对小数部分的处理;由于该题是遇到小数就直接进一,我们只需要先判断是否有小数部分然后直接在原数上加一即可。

京公网安备 11010502036488号