信息学奥赛C++语言:津津的储蓄计划
【題目描述】
津津的零花錢一直都是自己管理。每個月的月初媽媽給津津300元錢,津津會預(yù)算這個月的花銷,并且總能做到實際花銷和預(yù)算的相同。
為了讓津津?qū)W習(xí)如何儲蓄,媽媽提出,津津可以隨時把整百的錢存在她那里,到了年末她會加上20%還給津津。因此津津制定了一個儲蓄計劃:每個月的月初,在得到媽媽給的零花錢后,如果她預(yù)計到這個月的月末手中還會有多于100元或恰好100元,她就會把整百的錢存在媽媽那里,剩余的錢留在自己手中。
例如11月初津津手中還有83元,媽媽給了津津300元。津津預(yù)計11月的花銷是180元,那么她就會在媽媽那里存200元,自己留下183元。到了11月月末,津津手中會剩下3元錢。
現(xiàn)在請你根據(jù)2004年1月到12月每個月津津的預(yù)算,判斷會不會出現(xiàn)這種情況。如果不會,計算到2004年年末,媽媽將津津平常存的錢加上20%還給津津之后,津津手中會有多少錢。。
【輸入】
包括12行數(shù)據(jù),每行包含一個小于350的非負(fù)整數(shù),分別表示1月到12月津津的預(yù)算。
【輸出】
只包含一個整數(shù)。如果儲蓄計劃實施過程中出現(xiàn)某個月錢不夠用的情況,輸出-X,X表示出現(xiàn)這種情況的第一個月;否則輸出到2004年年末津津手中會有多少錢。
【輸入樣例】
290
230
280
200
300
170
340
50
90
80
200
60
【輸出樣例】
-7
【其它樣式2】
【[樣例2】
輸入:
290
230
280
200
300
170
330
50
90
80
200
60
輸出:1580
代碼
#include<cstdio> using namespace std; int a[13],t=0,s=0; //t是存在媽媽那里的錢,s是除了存的剩下的 int main() {for (int i=1;i<=12;++i) {s+=300; scanf("%d",&a[i]); if(s-a[i]<0){ printf("-%d",i); return 0; }s-=a[i]; while(s>100) {s-=100; t+=100; }}t*=1.2;printf("%d",t+s); return 0; } #include<iostream> using namespace std; int main() {int a[13],t=0,s=0; //t是存在媽媽那里的錢,s是除了存的剩下的for (int i=1;i<=12;++i) {s+=300; cin>>a[i]; if(s-a[i]<0){ cout<<"-"<<i<<endl; return 0; }s-=a[i]; while(s>100) {s-=100; t+=100; }}cout<<1.2*t+s<<endl; return 0; }總結(jié)
以上是生活随笔為你收集整理的信息学奥赛C++语言:津津的储蓄计划的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通C++语言——1047:
- 下一篇: s3c2440移植MQTT