[AHOI2001]彩票摇奖
先上题
- 每张彩票上印有 7个各不相同的号码,且这些号码的取值范围为 1∼33。
- 每次在兑奖前都会公布一个由七个各不相同的号码构成的中奖号码。
- 共设置 7 个奖项,特等奖和一等奖至六等奖。
兑奖规则如下:
- 特等奖:要求彩票上 7 个号码都出现在中奖号码中。
- 一等奖:要求彩票上有 6 个号码出现在中奖号码中。
- 二等奖:要求彩票上有 5 个号码出现在中奖号码中。
- 三等奖:要求彩票上有 4 个号码出现在中奖号码中。
- 四等奖:要求彩票上有 3 个号码出现在中奖号码中。
- 五等奖:要求彩票上有 2 个号码出现在中奖号码中。
- 六等奖:要求彩票上有 1 个号码出现在中奖号码中。
注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为 23\ 31\ 1\ 14\ 19\ 17\ 18,则彩票 12 8 9 23 1 16 7 由于其中有两个号码(23 和 1)出现在中奖号码中,所以该彩票中了五等奖。
现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。
输入格式
输入的第一行只有一个自然数 n,表示小明买的彩票张数;
第二行存放了 7个介于 1 和 33 之间的自然数,表示中奖号码;
在随后的 n 行中每行都有 7个介于 1 和 33 之间的自然数,分别表示小明所买的 n 张彩票。
输出格式
依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。
输入输出样例
输入 #1复制
2 23 31 1 14 19 17 18 12 8 9 23 1 16 7 11 7 10 21 2 9 31
输出 #1复制
0 0 0 0 0 1 1
分析:这道题我是用暴力过的,题虽然不难,但我还是想分享一下我的解法
对于数据的输入肯定是用循环+数组的方式,首先我们需要创建一个数组用来存放中奖的号码,然后采用循环遍历的方式读入数据,因为买了n张彩票,所以我们可以构建一个n重循环,在循环内部读入7次数据,表示1张彩票中的7个号码,接下来我们需要干一件事情,就是每次读入一个号码就将它与中奖号码进行匹配,如果相同就更新计数器,并且跳出这一次循环,去比较下一次读入的数据。整体的思路大概就是这个样子,在这里有一个难点就是我们还需要考虑数据的输出,所以我们可以创建一个数组,把计数器当下标代表是几等奖,存入中奖的张数,最后逆序输出就可以了。。。。。。
废话不多说我们这里直接上代码
#include<stdio.h>
int main()
{int i, j, k, t;int a[8];//存入中奖号码int b[8]={0};//存入中奖张数,下标表示几等奖int n;int count = 0;scanf_s("%d", &n);for (i = 1; i <= 7; i++){scanf_s("%d", &a[i]);}for (i = 1; i <= n; i++)//买了n张彩票{count = 0;for (j = 1; j <= 7; j++)//1张彩票有7个号码{scanf_s("%d", &t);for (k = 1; k <= 7; k++)//将当前号码与中奖号码一一比较{if (t == a[k]){count++;break;//中奖即更新计数器,跳出循环对比下一个数}}}b[count]++;}for (i = 7; i >= 1; i--){printf("%d ", b[i]);}return 0;
}
写完代码还是有几点需要注意的
1.对于要存入中奖张数的数组一定一定要初始化。
2.1张彩票的7个号码遍历完成之后一定要更新计数器count=0.
3.我们需要创建一个临时变量存入号码,通过一个循环去遍历中奖号码,将该号码与中奖号码一一比对。
今天的分享就到这里
[AHOI2001]彩票摇奖相关推荐
- P2550 [AHOI2001]彩票摇奖(python3实现)
[AHOI2001]彩票摇奖 - 洛谷 """P2550 [AHOI2001]彩票摇奖(python3实现) https://www.luogu.com.cn/probl ...
- 洛谷——P2550 [AHOI2001]彩票摇奖
P2550 [AHOI2001]彩票摇奖 题目描述 为了丰富人民群众的生活.支持某些社会公益事业,北塔市设置了一项彩票.该彩票的规则是: 每张彩票上印有 77 个各不相同的号码,且这些号码的取值范围为 ...
- P2550 [AHOI2001]彩票摇奖
题目链接:https://www.luogu.com.cn/problem/P2550 题目描述 为了丰富人民群众的生活.支持某些社会公益事业,北塔市设置了一项彩票.该彩票的规则是: 每张彩票上印有 ...
- P2550 [AHOI2001]彩票摇奖(C语言)
#include<stdio.h> int main() {int n,m=7;int a[1001][7]={0},b[7]={0}; //把数组定义大一点,不然就会WA scanf(& ...
- P2550 彩票摇奖
为了丰富人民群众的生活.支持某些社会公益事业,北塔市设置了一项彩票.该彩票的规则是: 每张彩票上印有 77 个各不相同的号码,且这些号码的取值范围为 1\sim331∼33. 每次在兑奖前都会公布一个 ...
- P2550数组彩票摇奖
桶排序在搜索计数中的应用 题目描述 为了丰富人民群众的生活.支持某些社会公益事业,北塔市设置了一项彩票.该彩票的规则是: 每张彩票上印有 77 个各不相同的号码,且这些号码的取值范围为 1\sim33 ...
- 彩票摇奖 java_Java课程设计——彩票购买抽奖系统
一.项目介绍 题目要求: 功能要求: 模拟福利彩票36选7,实现彩票的抽奖与中奖通知功能. 1.允许注册用户,用户信息包括用户id,用户名,密码,账户金额,电话号码等属性. 2.允许注册用户购买彩票: ...
- 彩票摇奖 java_用java 实现彩票摇奖,猜拳程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 人机猜拳对战游戏.由电脑随机猜拳分别石头.剪刀.布; 然后有用户输入自己的猜拳,判断输赢.程序要求可以循环猜拳; class Quan{ //少不了的定义 ...
- 洛谷-P2550-彩票摇奖
[AHOI2001]彩票摇奖 - 洛谷 #include<bits/stdc++.h> using namespace std; int a[10],b[10]; int main() { ...
最新文章
- 遇事不责怪别人,换位思考能成全更好的自己
- 解决oracle数据库连接不上的问题
- 以京东为代表电商平台成中华老字号销售增速最快渠道
- WPF 使用值转换器进行绑定数据的转换IValueConverter
- kali之msfconsole
- 应用系统云原生架构衡量指标
- 计算机装系统找不到硬盘,电脑重装系统找不到硬盘驱动器怎么办?
- HDFS配置之NN-SNN-DN
- Laravel56查询构建器中的increment和decrement用法
- php电商订单模块设计,电商后台订单管理模块
- 重磅上线!万兴科技旗下亿图图示12.0打造全新智能绘图体验
- 路径规划——CH算法
- 火车头不能用mysql_火车头采集器发布失败常见问题汇总
- 小P的单调区间——解题报告
- HashCode 理解测试
- Java项目:ssm学生综合素质评价系统
- 关于WM_ERASEBKGND和WM_PAINT的深刻理解
- 企业标准的分类,企业标准有几种
- 购物商城模板APP和定制APP的区别到底在哪里
- android AppWidgetProvider 定时刷新问题
热门文章
- 刺探内心深处远古的记忆OnDragListener
- 百度地图多点路线规划_通勤出行该选谁?高德、百度地图对比,看看谁是上班最优选...
- vue实现浏览器代码在线编辑预览
- RabbitMQ(消息队列)浅记
- Nginx——nginx作为静态资源web服务(CDN场景)
- 猫影视配置2022.06.04
- 第二周总结(2018-03-05~2018-03-09)
- pytorch dali 加速 dali支持的数据处理列表,mxnet tensorflow caff读取数据转换 pytorch训练
- CRM销售管理系统能够给企业带来哪些好处?
- 对于拓展欧几里德算法的理解