NOIP2004 提高组 复赛 save 津津的储蓄计划
1.题目对程序知识要求比较简单,主要考思考。
2.需要开sheng(剩),cun(存)两个变量对每个月的结余进行处理。
3.两个关键点,一是cun*1.2不合适,因cun是整数,不能与浮点直接相乘,可以采用cun/10*12。
4.二是,别忘了手中的钱还要加上12月剩的钱,即cun/10*12+sheng。
5.样例通过后,提交AC。
耗时:15分钟
难度:简单
附上AC代码,编译环境Dev-C++4.9.9.2
//2004 save
#include <stdio.h>
int ys[13];
int main(){
int i;
int sheng,cun;
int flag;
for(i=1;i<=12;i++)
scanf("%d",&ys[i]);
sheng=0;
cun=0;
flag=0;
for(i=1;i<=12;i++){
sheng=sheng+300-ys[i];
if(sheng<0){
flag=1;
break;
}
if(sheng>=100){
cun=cun+(sheng/100)*100;
sheng%=100;
}
}
if(flag)
printf("%d\n",i*(-1));
else
printf("%d\n",cun/10*12+sheng);
}
本文解析了NOIP2004提高组复赛中的“津津的储蓄计划”题目的解决思路及核心代码实现。文章强调了如何处理每月结余,并通过实例演示了如何避免使用浮点运算,确保程序的正确性和效率。
466

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



