【洛谷 P1089】[NOIP2004 提高组] 津津的储蓄计划 题解(循环)

简介: **摘要:**这是一个关于编程竞赛题目的摘要,题目编号NOIP2004提高组,名为“津津的储蓄计划”。津津每月初从妈妈那里获得300元,需要根据预算决定储蓄。若预计月底有超过或正好100元,她会存储整百金额。如果某月资金不足预算,输出第一个这样的月份加负号;否则,计算年末时津津手中的总金额(储蓄部分加20%)。输入是12个月的预算,输出是一个整数结果。提供的C++代码示例用于处理这个问题,通过迭代计算每个月的资金状况。样例输入和输出展示了不同情况下的结果。

[NOIP2004 提高组] 津津的储蓄计划

题目描述

津津的零花钱一直都是自己管理。每个月的月初妈妈给津津 $300$ 元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。

为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那里,到了年末她会加上 $20\%$ 还给津津。因此津津制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果她预计到这个月的月末手中还会有多于 $100$ 元或恰好 $100$ 元,她就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。

例如 $11$月初津津手中还有 $83$ 元,妈妈给了津津 $300$ 元。津津预计$11$月的花销是 $180$ 元,那么她就会在妈妈那里存 $200$ 元,自己留下 $183$ 元。到了 $11$ 月月末,津津手中会剩下 $3$ 元钱。

津津发现这个储蓄计划的主要风险是,存在妈妈那里的钱在年末之前不能取出。有可能在某个月的月初,津津手中的钱加上这个月妈妈给的钱,不够这个月的原定预算。如果出现这种情况,津津将不得不在这个月省吃俭用,压缩预算。

现在请你根据 $2004$ 年 $1$ 月到 $12$ 月每个月津津的预算,判断会不会出现这种情况。如果不会,计算到 $2004$ 年年末,妈妈将津津平常存的钱加上 $20\%$ 还给津津之后,津津手中会有多少钱。

输入格式

$12$ 行数据,每行包含一个小于 $350$ 的非负整数,分别表示 $1$ 月到 $12$ 月津津的预算。

输出格式

一个整数。如果储蓄计划实施过程中出现某个月钱不够用的情况,输出 $-X$,$X$ 表示出现这种情况的第一个月;否则输出到 $2004$ 年年末津津手中会有多少钱。

注意,洛谷不需要进行文件输入输出,而是标准输入输出。

样例 #1

样例输入 #1

290
230
280
200
300
170
340
50 
90 
80 
200
60

样例输出 #1

-7

样例 #2

样例输入 #2

290 
230 
280 
200 
300 
170 
330 
50 
90 
80 
200 
60

样例输出 #2

1580

思路

计算每个月剩余的钱,将大于100的部分存起来。

AC代码

#include <iostream>
#define AUTHOR "HEX9CF"
using namespace std;

int main() {
   
    int bg[15];
    int cash = 0;
    int dep = 0;
    for(int i = 0; i < 12; i++){
   
        cin >> bg[i];
    }
    for(int i = 0; i < 12; i++){
   
        cash += 300;
        // cout << cash - bg[i] << endl;
        if(bg[i] > cash){
   
            cout << -(i + 1) << endl;
            return 0;
        }
        cash -= bg[i];
        while(100 <= cash){
   
            cash -= 100;
            dep += 100;
        }
    }
    cout << cash + dep * 1.2 << endl;
    return 0;

}
目录
相关文章
|
消息中间件 分布式计算 大数据
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
780 0
|
Java API
JDK API文档中文版(1.6、1.8、1.9)(附百度网盘下载地址)
JDK API文档中文版(1.6、1.8、1.9)(附百度网盘下载地址)
6706 3
JDK API文档中文版(1.6、1.8、1.9)(附百度网盘下载地址)
|
iOS开发
iOS - QRCode 二维码
1、QRCode 在 iOS7 以前,在 iOS 中实现二维码和条形码扫描,我们所知的有,两大开源组件 ZBar 与 ZXing。iOS7 之后可以利用系统原生 API 生成二维码, iOS8 之后可以生成条形码, 系统默认生成的颜色是黑色。
2979 0
|
算法 数据处理 C++
【C++ 20 新特性 算法和迭代器库的扩展和泛化 Ranges】深入浅出C++ Ranges库 (Exploring the C++ Ranges Library)
【C++ 20 新特性 算法和迭代器库的扩展和泛化 Ranges】深入浅出C++ Ranges库 (Exploring the C++ Ranges Library)
1485 1
|
机器学习/深度学习 TensorFlow API
TensorFlow与Keras实战:构建深度学习模型
本文探讨了TensorFlow和其高级API Keras在深度学习中的应用。TensorFlow是Google开发的高性能开源框架,支持分布式计算,而Keras以其用户友好和模块化设计简化了神经网络构建。通过一个手写数字识别的实战案例,展示了如何使用Keras加载MNIST数据集、构建CNN模型、训练及评估模型,并进行预测。案例详述了数据预处理、模型构建、训练过程和预测新图像的步骤,为读者提供TensorFlow和Keras的基础实践指导。
795 59
|
3月前
|
敏捷开发 数据可视化 项目管理
2025年最值得选择的Jira替代方案(国产工具版)
2025国产Jira替代方案盘点:板栗看板、Worktile、Tower、禅道等工具成为敏捷开发新选择。Jira虽功能强大但存在价格高、本地化不足等问题,国产替代方案在功能完备性(支持Scrum/看板)、本地部署、钉钉/企业微信集成及性价比方面更具优势。对比显示:创业团队适合板栗看板/Tower,研发团队推荐禅道/Worktile,设计营销团队可选择Tower或钉钉项目+语雀组合。迁移建议从数据导出和团队培训着手,国产工具已能提供媲美Jira的协作体验,是企业项目管理数字化转型的更优解。
155 0
|
12月前
|
机器学习/深度学习 供应链 监控
深度学习之实时库存管理
基于深度学习的实时库存管理在电商、零售、制造业和物流等多个行业中具有极高的应用价值。深度学习模型可以帮助企业实时监测库存动态、优化库存补充决策、预测需求波动,确保库存水平稳定且适合实际需求,从而降低成本、提高客户满意度。以下从核心技术、常见应用场景、技术挑战及未来发展方向进行详细说明。
667 3
|
12月前
|
存储 Python
使用django构建一个多级评论功能
使用django构建一个多级评论功能
157 0
|
C++
【PTA】​ L1-009 N个数求和​ (C++)
【PTA】​ L1-009 N个数求和​ (C++)
614 0
【PTA】​ L1-009 N个数求和​ (C++)