“钱”老梗之小c的零花钱

编程入门 行业动态 更新时间:2024-10-07 12:20:18

“钱”老梗之小c的<a href=https://www.elefans.com/category/jswz/34/1729561.html style=零花钱"/>

“钱”老梗之小c的零花钱

10012

题目描述

体育在中考地位越来越重要,为了鼓励小C同学进行体育锻炼,小C的爸爸制定了一个计划,用于鼓励小C进行体育锻炼。他把小C每天的体育锻炼时间进行统计(单位:分钟,是一个整数),小C每累计3天锻炼时间达到60分钟或者以上,就奖励小C零花钱,零花钱为这3天的锻炼总时间-170元(注意:每次锻炼不能重复计算)。但如果有一天小C没有参加锻炼(锻炼时间为0),则立刻终止奖励(这意味着后续的锻炼都无法获得奖励)。已知小C的锻炼数据,小C很需要零花钱,所以总是第一时间拿奖励的零花钱,请问小C能拿到多少钱?

输入输出

数据的第一行一个正整数n,表示小C参加锻炼的天数

第二行是n个>=0的整数,表示小C第i天锻炼的时间(单位:分钟)

输出

零花钱数。

其实这题又是在考察一维数组(熟悉我的人都知道我最擅长的也就是一维数组而已,不熟悉我的康康我的个人简介就OK)

代码如下:

#include<bits/stdc++.h>
#include<iomanip>
using namespace std;
int a[100001],b[100001]={0},c=0,p=0;//定义比较大的数组切记要放在主函数外,a用于储存分钟数,b用于避免重复计算,c用于每三次的叠加,p用于存储零花钱总数并输出
int main()
{
freopen("10012.in","r",stdin);
freopen("10012.out","w",stdout);//这两行可以自行删除了
int n,s=0;
cin>>n;for(int i=1;i<=n;i++)
{cin>>a[i];b[i]=1;
}
for(int i=1;i<=n-2;i++)
{if(a[i]>=60&&b[i]==1)//如果小c的锻炼达到60分钟并且没有被重复计算,可以累计分钟数并且计算零花钱数{s+=a[i];b[i]=0;c++;if(c==3){p=p+(s-170);s=0;c=0;}}if(a[i]==0)break;//如果他今天没有锻炼,就不能计算零花钱了
}
cout<<p;
return 0;
}

更多推荐

“钱”老梗之小c的零花钱

本文发布于:2024-03-11 18:01:17,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1729556.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:零花钱

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!