科丁乐2020.3.29模拟赛 第二题K12726

科丁乐2020.3.29模拟赛 第二题K12726

题目描述:

为提升商业消费,提振消费信心,某商场正在举行“战疫情促消费”的抽奖活动。每一位到场的顾客都有一个编号,抽奖活动是这样的,首先自动抽奖机会随机的抽出两个数字m和n,其中m是小于n的,然后在[m,n]这个区间内找出能够被2、3、5除后均余1的编号,那么找出的前10位编号就是获奖的编号。

请你编写一个程序,帮忙计算出这10位获奖编号吧。

输入格式:

输入一行,两个整数m和n,其中1<m<n≤100000

输出格式:

如果能够找出10位获奖编号,则按照从小到大的顺序输出这10个获奖编号,中间用空格隔开。

如果满足条件的中奖编号数量小于10,则额外在第二行输出字符串“Go on !”

解析:

可能有同志们

很好奇

我都已经发过第一题和第三题了

怎么到现在才发第二题

实不相瞒

这道题

我只得了

40分

我花了一些时间

改正了一下

现在是正确的了

其实大部分同志

看过题目以后会发现

这道题其实特别特别的简单

但我为什么会错呢

这道题

上面要求

如果数目大于或等于10

直接输出前10个

如果小于10

就把所有的都输出来

再输出一个“Go on !”

就可以了

前面的判断也可以简便一点

要求%2、%3、%5以后都余1

其实也就是%30余1罢了

也很简单

下面附上代码!!!

代码:
#include<bits/stdc++.h>
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int n,m,sum=0,a[10001];
int main()
{
	cin>>n>>m;
	for(int i=n;i<=m;i++)
	{
		//cout<<"1234455"<<endl;
		if((i%2==1)&&(i%3==1)&&(i%5==1)&&(sum<=10))
		{
			sum++;
			a[sum]=i;
		}
	}
	//cout<<"1234455"<<endl;
	
	if(sum<=9) 
	{
	    for(int i=1;i<=sum;i++)
    	cout<<a[i]<<" ";
    	cout<<endl;
	    cout<<"Go on !"<<endl;
	}
	else
	{
	    for(int i=1;i<=10;i++)
        cout<<a[i]<<" ";
	}
	return 0;
}

拜拜!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值