彩票摇奖

【C++】P2550 [AHOI2001] 彩票摇奖 在C++编程学习中,理解和解决复杂问题的能力是关键。本篇文章围绕一个实际的竞赛题目展开——**“彩票中奖判定问题”**,从题目描述、我的实现、老师的实现到代码优化和拓展,逐步展开详细的分析和讲解,希望帮助读者提升编程思维。 2025.1.5-✍77min 阅读详情

题目描述
为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。该彩票的规则是:

每张彩票上印有 77 个各不相同的号码,且这些号码的取值范围为 1\sim331∼33。
每次在兑奖前都会公布一个由七个各不相同的号码构成的中奖号码。
共设置 77 个奖项,特等奖和一等奖至六等奖。
兑奖规则如下:

特等奖:要求彩票上 77 个号码都出现在中奖号码中。
一等奖:要求彩票上有 66 个号码出现在中奖号码中。
二等奖:要求彩票上有 55 个号码出现在中奖号码中。
三等奖:要求彩票上有 44 个号码出现在中奖号码中。
四等奖:要求彩票上有 33 个号码出现在中奖号码中。
五等奖:要求彩票上有 22 个号码出现在中奖号码中。
六等奖:要求彩票上有 11 个号码出现在中奖号码中。
注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为 23\ 31\ 1\ 14\ 19\ 17\ 1823 31 1 14 19 17 18,则彩票 12\ 8\ 9\ 23\ 1\ 16\ 712 8 9 23 1 16 7 由于其中有两个号码(2323 和 11)出现在中奖号码中,所以该彩票中了五等奖。

现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

输入格式
输入的第一行只有一个自然数 nn,表示小明买的彩票张数;

第二行存放了 77 个介于 11 和 3333 之间的自然数,表示中奖号码;

在随后的 nn 行中每行都有 77 个介于 11 和 3333 之间的自然数,分别表示小明所买的 nn 张彩票。

输出格式
依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。

输入输出样例
输入
2
23 31 1 14 19 17 18
12 8 9 23 1 16 7
11 7 10 21 2 9 31
输出
0 0 0 0 0 1 1

最简单繁琐的方法就是用二维数组存储数据然后和彩票的中奖号码一个一个比较,需要代码较长

第二种方法比较简短代码如下:

#include<iostream>
using namespace std;
int f[33],p[10],n,m;
int main()
{
    cin>>n;
    for(int i=0;i<7;i++)
    {
        cin>>m;
        f[m]=1;
    }
    for( i=1;i<=n;i++)
    {
        int sum=0;//中奖号码数量
        for(int j=1;j<=7;j++)
        {
            cin>>m;
            if(f[m]==1)sum++;
        }
        p[sum]++;
    }
    for( i=7;i>=1;i--)cout<<p[i]<<' ';
    return 0;
}
P2550 [AHOI2001]彩票摇奖和P2615 [NOIP2015 提高组] 神奇的幻方(洛谷oj) P2550 [AHOI2001]彩票摇奖 题目描述: 思路:这道题思路很简单,就是先让你输入一个固定的中奖号码,再输入n行彩票号码(即小明买了n张彩票),将每行彩票号码与中奖号码进行比对,记录彩票号码中出现的中奖号码数字的次数,比如例子12 8 9 23 1 16 7与中奖号码23 31 1 14 19 17 18比对,出现了23和1这两个数字,根据题目要求该号码获得了五等奖,即在输出数组中的a[5]处加1,表示中了一次五等奖;同理,11 7 10 21 2 9 31中只有中奖号码数字31出现了1次,根 阅读详情

相关推荐

C语言for循环结构经典练习

C语言的一些经典例题,还是挺有用的

xiaobai729的博客 2万+

P2550 [AHOI2001]彩票摇奖(C语言)

#include<stdio.h> int main() { int n,m=7; int a[1001][7]={0},b[7]={0}; //把数组定义大一点,不然就会WA scanf("%d\n",&n); for(int i=0;i<=n;i++) //存入中奖号码及买入彩票号码 { for(int j=0;j<7;j++) { scanf("%d",&a[i][j]); } } for(in...

weixin_47904223的博客 2877

《彩票摇奖》

例如,中奖号码为 23 31 1 14 19 17 1823 31 1 14 19 17 18,则彩票 12 8 9 23 1 16 712 8 9 23 1 16 7 由于其中有两个号码(2323 和 11)出现在中奖号码中,所以该彩票中了五等奖。依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。输入的第一行只有一个自然数 nn,表示小明买的彩票张数;

Jasmine_llq的博客 1093

彩票摇奖(c++题解)

例如,中奖号码为 23 31 1 14 19 17 18,则彩票 12 8 9 23 1 16 7 由于其中有两个号码(23 和 1)出现在中奖号码中,所以该彩票中了五等奖。依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。在随后的 n 行中每行都有 7 个介于 1 和 33 之间的自然数,分别表示小明所买的 n 张彩票。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

hb_zhyu的博客 1004

Python模拟彩票摇奖:中奖概率与保本概率计算

随机数生成与概率统计是编程和数据分析的基础技术,通过模拟随机过程可以用频率逼近概率,揭示事件发生的真实规律。在工程实践中,利用Python标准库的random模块进行不放回抽样,结合组合数学公式,能够高效计算复杂场景下的理论概率与模拟概率。这种技术不仅适用于游戏模拟,还可用于风险评估、决策分析等领域。以彩票为例,通过模拟摇奖过程,可以计算各奖级中奖概率和保本概率,帮助理解负期望值游戏的数学本质。本文用Python实现彩票模拟器,展示随机数生成、概率计算和统计分析的完整流程。

weixin_29611239的博客 107

P2550 [AHOI2001]彩票摇奖

题目描述 为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一 项彩票。该彩票的规则是: (1) 每张彩票上印有 7 个各不相同的号码,且这些号码的取指范围为 1~33。 (2) 每次在兑奖前都会公布一个由七个各不相同的号码构成的中奖号码。 (3) 共设置 7 个奖项,特等奖和一等奖至六等奖。兑奖规则如下: 特等奖:要求彩票上 7 个号码都出现在中奖号码

G2523054231的博客 701

【洛谷彩票摇奖题解】

首先根据题目的输入要求来保存一些数据:先输入一个数n来确定有几张彩票,并且第二行需要输入7个1到33范围内各不相同的数字当作有将的号码,并且在后面n行输入来确定n张彩票的号码,所以到这里可以确定需要根据输入来保存哪些数据,第一个保存数入的第一个数n然后还需要一个数组来保存有奖的号码,然后还需要一个二维数组放在一个循环次数为n次的for循环里来保存n张彩票的号码,具体保存数据的代码如下。这里就定义了一个数组共七个元素每个元素都是用来记录某等奖的张数。最后就可以得到这些彩票中了什么奖且每个奖有多少张。

yxm2633669081的博客 43

C#彩票摇奖机源码解析与实践

在当今的IT行业中,构建一个简单的应用程序不仅能够提供实用功能,还能够展示编程语言和技术的强大能力。在本章中,我们将探索C#编写的一个有趣且实用的项目:彩票摇奖机。本项目不仅涵盖了随机数生成、类设计、异常处理等基础知识点,还结合了面向对象编程和系统设计的高级概念。彩票摇奖机是一个模拟实际摇奖过程的软件,其核心功能包括生成随机数、唯一号码检查、摇奖流程控制、结果保存等。通过这个项目,开发者可以学习如何运用C#语言实现这些功能,并且深入理解它们的工作原理。启动摇奖(StartDrawing)

weixin_28931507的博客 828

hi.彩票摇奖

为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。71∼3377654321注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为2331114191718,则彩票1289231167由于其中有两个号码(23和1)出现在中奖号码中,所以该彩票中了五等奖。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

Pretty Boy Fox的博客 892

SAP FICO会计凭证过账接口

-------------------------------------增加职能范围-ZHANGZG-2022.09.07 注释掉-2022.09.20。CONCATENATE '总账' ls_doc_item-hkont '要求输入成本对象值!*-------------------------------------增加职能范围-ZHANGZG-2022.09.07。*-------------------------------------增加职能范围-ZHANGZG-2022.09.07。

dingqing86的专栏 1078

BeikeShop跨境电商独立站系统V1.5.0免授权全开源版

BeikeShop 一款开源好用的跨境电商系统,BeikeShop 是基于 Laravel 开发的一款开源商城系统,主要面向外贸/跨境电商行业提供商品管理、订单管理、会员管理、支付、物流、系统管理等功能。BeikeShop商城 Beike多语言商城 多货币商城B2C商城系统 代码100%开源 PHP商城系统 H5/PC商城 跨境电商系统 跨境商城系统 电商商城系统 Laravel 9 框架插件化开发,MVC架构 支持插件市场。Event 机制实现Hook功能,自定义可视化装修。

817

[AHOI2001] 彩票摇奖

为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。71∼3377654321注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为2331114191718,则彩票1289231167由于其中有两个号码(23和1)出现在中奖号码中,所以该彩票中了五等奖。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

pleasantgoat17的博客 982

WinForm实战:如何用C#和PdfiumViewer打造一个功能齐全的PDF阅读器(含源码)

本文详细介绍了如何使用C#和PdfiumViewer库从零开始构建一个功能齐全的WinForm PDF阅读器。内容涵盖项目环境搭建、核心组件解析、基于命令模式的工具栏与UI架构设计,并深入讲解了智能缩放、页面导航、打印功能等核心交互的实现,以及内存管理和性能优化等高级话题,为开发者提供了一套完整的实战解决方案。

docker8compose的博客 503

P2550 彩票摇奖【入门】

为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。71∼3377654321注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为2331114191718,则彩票1289231167由于其中有两个号码(23和1)出现在中奖号码中,所以该彩票中了五等奖。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

海岛Blog 1145

QEMU pcie config空间访问机制

而pci_host_conf/data_le_ops的定义是在hw/pci/pci-host.c里,对于0xCF8端口的处理,因为是地址选通,所以只需要在write的时候记录、read的时候返回记录的值即可。而pci_host_config_write/read_common接口,在前256Bconfig空间的模拟中,也同样是会调用这个接口,所以后续的处理都是一样的。这是真实的硬件设计,而对于QEMU+KVM的虚机场景,显然是要基于硬件实现和虚拟化的需求设计虚机访问config空间的完整流程。

leiyanjie8995的博客 1950

android 数据库锁的问题

最近在项目中遇到一个错误: 12-26 17:29:10.501 32592 32644 W SQLiteConnectionPool: The connection pool for database '***.db' has been unable to grant a connection to thread 1378 (thread-pool-0) with flags 0x2 for...

低调的成长 2903

C++ [AHOI2001] 彩票摇奖

依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。)出现在中奖号码中,所以该彩票中了五等奖。之间的自然数,分别表示小明所买的。之间的自然数,表示中奖号码;输入的第一行只有一个自然数。,表示小明买的彩票张数;由于其中有两个号码(

Zr1ose的博客 857

VTK基础教程(1)- vtkPolyData 介绍

目录 VTK的编译与环境搭建 VTK一般渲染流程 VTK数据类型-vtkPolyData 使用vtk自带的多边形数据 使用自己创建的数据 添加顶点颜色 添加面颜色 VTK的编译与环境搭建 这部分目前已经有了大佬做了成熟的傻瓜式配置,大家可以参考这篇文章:VTK+VS2019(或其他版本均可) 傻瓜式一站式 配置_Nancy_fairy的博客-优快云博客_vs2019 vtk VTK一般渲染流程 这部分的介绍也很多,大家可以参考这篇文章:VTK笔记-了解VTK_黑山老妖的博客.

qq_35769071的博客 9053

P2550 [AHOI2001] 彩票摇奖

依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。)出现在中奖号码中,所以该彩票中了五等奖。之间的自然数,分别表示小明所买的。之间的自然数,表示中奖号码;输入的第一行只有一个自然数。,表示小明买的彩票张数;由于其中有两个号码(

2301_80684112的博客 374

大模型训练和推理

大模型训练moe是指混合专家(Mixture-of-experts,简称MoE)的,这是一种用于提高大型神经网络性能的技术,它可以将模型的一部分替换为多个专家,每个专家只负责处理一部分输入数据,从而增加模型的参数量和表达能力,同时减少计算量和训练时间。指令可以作为模型的输入的一部分,也可以作为模型的输出的一部分,具体取决于任务的类型。上下文扩展技术的,这是一种用于提高大型语言模型(LLM)对长文本的处理能力的技术,它可以让模型在不增加参数量的情况下,扩展其注意力范围,从而提高模型的语言理解和生成能力。

weixin_45325331的博客 6016

手把手教你学Simulink--基于Simulink的风力发电系统用双馈电机控制仿真建模

特点高效节能:在广泛的风速范围内保持高效的能量转换。独立控制有功和无功功率:通过控制转子电流实现对有功和无功功率的独立调节。较低的成本:相比直接驱动或全功率变流器方案,成本较低。挑战控制复杂度较高:需要复杂的控制算法来实现有功和无功功率的解耦控制。对电网波动敏感:需要良好的稳定性控制策略以应对电网电压波动。利用Simscape Electrical中的模块构建DFIG的物理模型,配置参数如电阻、电感、极对数等。matlab深色版本% 添加DFIG电机模块。

MHD0815的博客 346

P2550 [AHOI2001] 彩票摇奖 题解

P2550 [AHOI2001] 彩票摇奖 题解

yaosichengalpha的博客 1123

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

洛谷P2550 [AHOI2001] 彩票摇奖

为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。71∼3377654321注:兑奖时并不考虑彩票上的号码和中奖号码中的各个号码出现的位置。例如,中奖号码为2331114191718,则彩票1289231167由于其中有两个号码(23和1)出现在中奖号码中,所以该彩票中了五等奖。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

tonman7797的博客 792

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

洛谷P2550彩票摇奖题解:桶标记+查表法轻松AC

在算法入门和竞赛编程中,集合交集判定与离散映射是高频基础模型。通过布尔数组(桶标记)可在O(1)时间内判断元素是否属于基准集合,再借助查表法将命中数量精准映射到奖项等级,这种“标记+映射”的组合在抽奖系统、文本分类、成就判定等场景中广泛适用。洛谷P2550彩票摇奖题正是这一模型的经典实践:先读入开奖号码并用桶标记记录,注意特殊号不参与计数,随后对每张彩票统计命中数,通过prize表转换输出特等到六等奖的张数。掌握这套思路不仅能快速AC,还能迁移到数据范围更大、规则更复杂的场景。结合C++与Python实现,

weixin_33178839的博客 175

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

P2550 彩票摇奖

例如,中奖号码为 23 31 1 14 19 17 18,则彩票 12 8 9 23 1 16 7 由于其中有两个号码(23 和 1)出现在中奖号码中,所以该彩票中了五等奖。依次输出小明所买的彩票的中奖情况(中奖的张数),首先输出特等奖的中奖张数,然后依次输出一等奖至六等奖的中奖张数。在随后的 n 行中每行都有 7 个介于 1 和 33 之间的自然数,分别表示小明所买的 n 张彩票。现已知中奖号码和小明买的若干张彩票的号码,请你写一个程序帮助小明判断他买的彩票的中奖情况。

Ferker的博客 223
上一篇: 比比成绩
下一篇: 蛇形方阵
凌晨里的无聊人
博客等级 码龄8年 2320粉丝 206原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值