信息学奥赛一本通 1074:津津的储蓄计划 | 1835:【04NOIP提高组】津津的储蓄计划 | OpenJudge NOI 1.5 22
生活随笔
收集整理的這篇文章主要介紹了
信息学奥赛一本通 1074:津津的储蓄计划 | 1835:【04NOIP提高组】津津的储蓄计划 | OpenJudge NOI 1.5 22
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【題目鏈接】
ybt 1074:津津的儲(chǔ)蓄計(jì)劃
ybt 1835:【04NOIP提高組】津津的儲(chǔ)蓄計(jì)劃
OpenJudge NOI 1.5 22:津津的儲(chǔ)蓄計(jì)劃
【題目考點(diǎn)】
1. 循環(huán)、判斷
【解題思路】
- 循環(huán)12次,讀入每個(gè)月的預(yù)算為b
- 設(shè)m為津津手中的錢(qián),每個(gè)月他媽給他300,那么每個(gè)月初他擁有的錢(qián)為m+300,
- 如果m+300大于等于當(dāng)月預(yù)算b,那么這個(gè)月能過(guò)下去。到月末時(shí),本月花剩下的錢(qián),等于本月有的錢(qián)m+300減去預(yù)算b。剩下的錢(qián)中,再把整百的錢(qián)存錢(qián)。設(shè)變量s表示存錢(qián)的數(shù)量。
- 如果m+300小于當(dāng)月預(yù)算b,那么這個(gè)月過(guò)不下去了,預(yù)算失敗,返回當(dāng)月月份(前面加負(fù)號(hào)),程序結(jié)束。
- 最終輸出手中的錢(qián)m加上存款s的本息和,為(1+20%)s + m = 1.2s + m
【題解代碼】
解法1:
#include<bits/stdc++.h> using namespace std; int main() {int m = 0, s = 0, b, t;//m:津津手中的錢(qián) s:存的錢(qián), b:某個(gè)月的預(yù)算for(int i = 1; i <= 12; ++i){cin>>b;if(m + 300 >= b)//如果本月能用的錢(qián)大于等于預(yù)算{t = m + 300 - b;//t:預(yù)計(jì)本月末剩余的錢(qián)m = t % 100; //存錢(qián)后,手中剩余的錢(qián)s += t - m; //存錢(qián)數(shù),為t中包含的整百數(shù),即 t - t % 100}else//如果本月能用的錢(qián)小于預(yù)算{cout<<-i;return 0;}}cout<<s*1.2 + m;//存款+利息+手里的錢(qián)return 0; }總結(jié)
以上是生活随笔為你收集整理的信息学奥赛一本通 1074:津津的储蓄计划 | 1835:【04NOIP提高组】津津的储蓄计划 | OpenJudge NOI 1.5 22的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 信息学奥赛一本通(1178:成绩排序)—
- 下一篇: 信息学奥赛一本通(1159:斐波那契数列