1307. 【综合测试4】放鞭炮(maroon)

46 篇文章 0 订阅
27 篇文章 0 订阅
题目描述

小朋友们都喜欢放鞭炮,尤其是男生在春节时,什么爆竹、摔炮还有各种烟花,玩得不亦乐乎。
今年的春节,小冲就不开心了,因为他在踢足球的时候把脚给扭伤了,现在只能躺在床上听着外面的小伙伴们放鞭炮的声音发呆,他发现,有时会有几个鞭炮同时想,有时却只有一个鞭炮想。爸爸知道小冲是个信息学竞赛爱好者,于是给他出了一个问题:有3个人同时开始放鞭炮,甲每2秒放一个,乙每3秒放一个,丙每5秒放一个,每个人都放10个鞭炮,你一共能听到多少次鞭炮响声呢?
小冲觉得这个问题太简单了,他想把程序编写得能够满足更有难度的要求:一共有n个小朋友同时开始放鞭炮,每个人放鞭炮间隔的时间不同,所放的鞭炮的数量也不同,等到大家都放完自己的鞭炮,一共能听到多少次鞭炮响声呢?小冲编写这个程序当然没问题,你能编写出来吗?

输入

第一行是一个自然数:n,表示一共有n个小朋友放鞭炮;
然后往下一共有n行,每行有两个自然数,i和j,表示这个小朋友每i秒种放一个鞭炮,一共放j个。

输出

只有一个数据:所有小朋友放完鞭炮后,小冲一共听到了多少次鞭炮的响声。

样例输入 
3
2 5
3 5
5 4
样例输出 
11
数据范围限制

1<=n<=100,1<=i,j<=1000。

提示

甲小朋友放完5个,乙放完5个,丙放完4个鞭炮后,小冲一共听到了11次鞭炮的响声。

实现代码:

#include<iostream>//头文件 
using namespace std;
bool a[1000001]={};//判断其中一秒是否放鞭炮 
int main()//主函数 
{
	int n,s,d,q;//分别代表人数,每秒放鞭炮数,共放鞭炮数 ,计数器 
	cin>>n;//输入 
	for(int i=1;i<=n;i++)//分别输入每个小朋友信息 
	{
		cin>>s>>d;//输入 
		for(int j=0;j<d;j++)a[j*s]=true;//从第0秒开始,放鞭炮的那一秒标记为有声音 
	}
	for(int i=0;i<=1000001;i++)//循环可能放鞭炮的秒数 
		if(a[i]==true)q++; //如果有放鞭炮计数器++ 
	cout<<q;//输出 
}

运行结果:

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值