小明的存钱计划

描述

小明的零花钱一直都是自己管理。每个月的月初妈妈给小明300元钱,小明会预算这个月的花销,并且总能做到实际花销和预算的相同。 
为了让小明学习如何储蓄,妈妈提出,小明可以随时把整百的钱存在她那里,到了年末她会加上20%还给小明。因此小明制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果他预计到这个月的月末手中还会有多于100元或恰好100元,他就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。 
例如11月初小明手中还有83元,妈妈给了小明300元。小明预计11月的花销是180元,那么他就会在妈妈那里存200元,自己留下183元。到了11月月末,小明手中会剩下3元钱。 
小明发现这个储蓄计划的主要风险是,存在妈妈那里的钱在年末之前不能取出。有可能在某个月的月初,小明手中的钱加上这个月妈妈给的钱,不够这个月的原定预算。如果出现这种情况,小明将不得不在这个月省吃俭用,压缩预算。 
现在请你根据2010年1月到12月每个月小明的预算,判断会不会出现这种情况。如果不会,计算到2010年年末,妈妈将小明平常存的钱加上20%还给小明之后,小明手中会有多少钱。

输入
第一行输入一个整数N,表示测试数据的组数(N<=10)
每组测试数据输入12行数据,每行包含一个小于350的非负整数,分别表示1月到12月小明的预算。

输出
每组输出包括一行,这一行只包含一个整数。如果储蓄计划实施过程中出现某个月钱不够用的情况,输出-X,X表示出现这种情况的第一个月;否则输出到2010年年末小明手中会有多少钱(如果是小数,请四舍五入到整数位)。

样例输入
1
290
230
280
200
300
170
340
50
90
80
200
60
样例输出
-7
 1 #include <stdio.h>
 2
 3 int main(){
 4     int T;
 5     int i;
 6     int money;
 7     int rest;
 8     int save;
 9     int temp;
10     int month;
11     int flag;
12     int total;
13
14     scanf("%d",&T);
15
16     while(T--){
17         rest=0;
18         save=0;
19         flag=0;
20         for(i=0;i<12;i++){
21             scanf("%d",&money);
22
23             if(rest+300>=money){
24                 temp=rest+300-money;
25                 save+=temp/100;
26                 rest=temp-temp/100*100;
27             }
28             else{
29                 month=i+1;
30                 flag=1;
31             }
32         }
33
34         if(flag==1)
35             printf("-%d\n",month);
36
37         else{
38             total=0;
39             total+=(rest+save*120);
40             printf("%d\n",total);
41         }
42     }
43
44     return 0;
45 }
 
时间: 2024-08-27 16:10:43

小明的存钱计划的相关文章

NYOJ 小明的存钱计划

小明的存钱计划 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 小明的零花钱一直都是自己管理.每个月的月初妈妈给小明300元钱,小明会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让小明学习如何储蓄,妈妈提出,小明可以随时把整百的钱存在她那里,到了年末她会加上20%还给小明.因此小明制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果他预计到这个月的月末手中还会有多于100元或恰好100元,他就会把整百的钱存在妈妈那里,剩余的钱留在自己手中.

小明的存钱计划 南阳acm54

小明的存钱计划 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 小明的零花钱一直都是自己管理.每个月的月初妈妈给小明300元钱,小明会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让小明学习如何储蓄,妈妈提出,小明可以随时把整百的钱存在她那里,到了年末她会加上20%还给小明.因此小明制定了一个储蓄计划:每个月的月初,在 得到妈妈给的零花钱后,如果他预计到这个月的月末手中还会有多于100元或恰好100元,他就会把整百的钱存在妈妈那里,剩余的钱留在自己手中.

nyoj-54-小明的存钱计划

小明的存钱计划 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 小明的零花钱一直都是自己管理.每个月的月初妈妈给小明300元钱,小明会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让小明学习如何储蓄,妈妈提出,小明可以随时把整百的钱存在她那里,到了年末她会加上20%还给小明.因此小明制定了一个储蓄计划:每个月的月初,在 得到妈妈给的零花钱后,如果他预计到这个月的月末手中还会有多于100元或恰好100元,他就会把整百的钱存在妈妈那里,剩余的钱留在自己手中.

读《小明升职记》(一)

每天的生活过的很焦躁,时间明显不够用,啥也没干就到了晚上,效率极低,毫无成就感,如此蹉跎岁月,没两天老之将至. 需要学习一点时间管理的技巧来规划个人时间. 原先用过番茄工作法,效率有所提升,起码在25分钟内可以做到比较专注,但也没坚持下来. 番茄虽好,仍感觉点太小,盲目感仍在. 网上知乎寻找了许多时间管理类的贴,下载了基本经典书籍. 其中一本是<小明升职记>,语言简朴诙谐,结合实例,国人写的,上来先看这本不至于被大部头弄得挫败. <小明>概要: 1. 处在网络浅阅读时代的人,如果没

OSChina 周日乱弹 ——小明毕业后,到银行上班…

啦啦啦,周日啦,大家要珍惜时间哦,把昨天未做好的事情都补上吧,嘿嘿 你看看,小明都毕业了,还没毕业的小盆友更要珍惜时间哦- 小明毕业去了银行,然后你懂得... [前台柜员版] 行长:昨天有客户把你投诉了,什么原因? 小明:冤枉啊!昨天有个客户办完业务起身,我发现他裤子拉链没拉,就好心提醒他.行长:你怎么说的?小明:我说,先生您裤子拉链没拉上.行长:没什么问题啊,怎么会投诉你的?小明:我忘了把扩音器关上了!行长: [客户经理版] 行长:客户要给太太买一份意外保险,受益人写客户本人.如果他太太去世了

小明铺路

[问题描述] 小明家门前有一条通往公交车站的马路,但由于有点低洼,下雨天很容易积水,给他的家人出行带来很大不便.周末了,他想带着妹妹把这条路重新铺一遍.假设该马路是2×n的长方形方格状,现在他们计划使用1×2型方砖进行铺设.小明想预算一下有多少种铺路方案,铺路过程中不允许把砖块敲碎.例如:如果n=3,即马路是2×3的长方形方格状,共有下列三种铺路方案(如下图). 对于任意的n,请你编写一个程序帮助小明计算铺放方案总数. [输入形式] 输入文件中包含多个测试数据.每个测试数据占一行,为一个正整数n

小明系列问题――小明序列(LIS)

小明系列问题――小明序列 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice HDU 4521 Description 大家都知道小明最喜欢研究跟序列有关的问题了,可是也就因为这样,小明几乎已经玩遍各种序列问题了.可怜的小明苦苦地在各大网站上寻找着新的序列问题,可是找来找去都是自己早已研究过的序列.小明想既然找不到,那就自己来发明一个新的序列问题吧!

hdu4521 小明系列问题——小明序列(LIS变种 (线段树+单点更新解法))

链接: huangjing 题目:中文题目 思路: 这个题目如果去掉那个距离大于d的条件,那么必然是一个普通的LIS,但是加上那个条件后就变得复杂了.用dp的解法没有看懂,我用的线段树的解法...就是采用延迟更新的做法,用为距离要大于d啊,所以我们在循环到第i的时候,就对(i-d-1)这个点进行更新,因为如果在(i-d-1)这个点更新了,会对后面的造成影响,然后线段树的tree[]数组存的是以i结尾的最长lis,那么每次询问的时候就找最大的tree[]就可以了... 代码: 小明系列问题--小明

NYOJ 49 开心的小明

开心的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 小明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:"你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N 元钱就行".今天一早小明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N 元.于是,他把每件物品规定了一个重要度,分为5 等:用整数1~5 表示,第5 等最重要.他还从因特网上查到了每件物品的价格(都是整数元).