L1-5 刷题与Z老师的头发 (10 分)

在Pintia上,每天Z老师出题、小盆友们刷题。Z老师的头发遵从以下规律:
1、每天生长出60根头发;
2、每出一道题,减少20根头发;
3、每天结束时统计累积做题情况:
(1)若出的题全部被做出来,则Z老师产生“没题焦虑”,减少30根头发;
(2)若小盆友做出来的题少于50%,则Z老师产生“学生不用功焦虑”,减少70根头发。
现给定连续N天的出题、刷题情况,请计算Z老师头发的变化情况。

输入格式:

第一行输入一个正整数N (N<20);
接下来N行,每行输入两个非负整数,分别是一天的出题数量q和刷题(做出来)数量s,以空格间隔。
题目输入保证出题总数量不超过N*10,并且每天的刷题量不会使累积刷题数量超过累积出题数量。

输出格式:

若Z老师头发增加K根,则输出+K;若Z老师头发减少K根,则输出-K;若没有变化,则输出--

输入样例1:

3
5 3
5 1
5 11

输出样例1:

-220

输入样例2:

3
3 2
3 2
3 2

输出样例2:

--

反思:其实是一个挺简单的题,但是我看错题意了,重点要关注红色的那两个字“累计”,每天结束时统计累积做题情况。而不是说只统计今天的。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
	int n,a,b;
	scanf("%d",&n);
	int sum=n*60;
	int sum1=0,sum2=0;//sum1为老师出的题数,sum2为被做出来的题数
	for(int i=0;i<n;i++)
	{
		scanf("%d%d",&a,&b);
	    sum-=a*20;
	    sum1+=a;
	    sum2+=b;
		if(sum2*2<sum1)sum-=70;
		else if(sum1==sum2)sum-=30;
	}
	if(sum<0)
	  printf("%d\n",sum);
	else if(sum==0)
	  printf("--\n");
	else
	  printf("+%d\n",sum);
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值