2016湖南湘潭邀请赛b题思路

news2024/10/7 16:18:57

最近训练时写的比赛,当时b题没写,事后补一下,看了下题解,想写下自己的解释

原题解:2016湖南湘潭邀请赛题解:2016年“长城信息”杯中国大学生程序设计比赛中南地区邀请赛(迟来的题解)

题目:

 大意是:有a个红球,b个绿球,c个蓝球,放在箱子里,每次从箱子中不放回的拿来一个,拿完一种颜色的所有的球,游戏就结束。根据拿完的球判断是几等奖,把所有红球拿完1等奖,所有绿球拿完2等奖,所有蓝球拿完3等奖,求每种奖项概率

当时感觉没什么思路,看了题解后大概明白了

先求一等奖的概率吧

假设我们把所有的球都拿完(即使把某种颜色的球全部拿完后,我们也接着拿,把所有球都拿完)

那么我们拿到一等奖的评判标准是什么,是我最后拿到的球的颜色不是红球,并在此基础上,去掉所有最后一个球同色球之后,最后一个拿到的球仍然不是红球,接下来我用a代表红球,b代表绿球,c代表蓝球

假设3红,3绿,3蓝

aababbccc  最后一个拿到的球是c,除去c之后最后拿到的球是b,一等奖条件成立

aabbbccac           最后一个拿到的球是c,除去c之后最后一个拿到的是a球,很明显不符合一等奖

bbabcccaa    最后一个球是红球,不符合一等奖要求

最后拿到的球的颜色不是红球,并在此基础上,去掉所有最后一个球的同色球之后,最后一个拿到的球仍然不是红球,满足这个条件的一定是一等奖,不满足的一定不是一等奖

那么根据这个规则,我们就可以把获得一等奖的概率这个问题就转换成,最后一个球不是红球,并且去掉所有最后一个球的同色球后,最后一个球仍然不是红球的概率

由于正常的来求这个也不太好求,所以我们可以把抽取的顺序倒置过来,比如我们把aababbccc

换成cccbbabaa,这样求最后一个球的概率就变成求第一个球的概率了,好算很多

于是我们分类讨论,当第一个球我们抽到绿球的概率是 b/(a+b+c)

去掉所有绿球后,我们第一个球得到蓝球的概率是  c/(a+c)

同理当第一个球我们抽到蓝球的概率是 c/(a+b+c)

去掉所有蓝球后,我们第一个球得到绿球的概率是  b/(a+b)

那么此时把两种情况概率相加,我们就得到了最后一个球不是红球,并且去掉所有最后一个球的同色球后,最后一个球仍然不是红球的概率,即一等奖概率

二等奖,三等奖计算也是如此

代码:

#include <iostream>
using namespace std;
typedef long long ll;
int f[1010][2020];
ll gcd(ll a,ll b)
{
    ll r=0;
    while(b)
    {
        r=a%b;
        a=b;
        b=r;
    }
    return a;
}
void alg(ll a,ll b,ll c)
{
    ll sum1=b*c*(2*a+b+c);
    ll sum2=(a+b+c)*(a+b)*(a+c);
    ll z=gcd(sum1,sum2);
    printf("%lld/%lld",sum1/z,sum2/z);
}
int main()
{
    int a,b,c;
    while(cin>>a>>b>>c)
    {
        alg(a,b,c);
        cout<<' ';
        alg(b,a,c);
        cout<<' ';
        alg(c,a,b);
        cout<<endl;

    }
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/454961.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Koordinator 一周年,新版本 v1.2.0 支持节点资源预留,兼容社区重调度策略

作者&#xff1a;佑祎、吕风 背景 Koordinator 是一个开源项目&#xff0c;基于阿里巴巴在容器调度领域多年累积的经验孵化诞生&#xff0c;可以提升容器性能&#xff0c;降低集群资源成本。通过混部、资源画像、调度优化等技术能力&#xff0c;能够提高延迟敏感的工作负载和…

第3章:select

1.最基本的select语句 select … from…select 字段1&#xff0c;字段2&#xff0c;…from 表名* 表中所有字段&#xff08;列&#xff09; 2.列的别名 字段1 as 别名1字段1 别名1as&#xff1a;alias&#xff08;别名&#xff09;可以省略如果别名有空格使用一对””引起来…

应用于音箱领域中的音频功放IC型号推荐

音箱音频功放ic俗称“扩音机”又叫音频功率放大器IC&#xff1b;是各类音响器材中不可缺少的部分&#xff0c;其作用主要是将音源器材输入的较微弱信号进行放大后&#xff0c;产生足够大的电流去推动扬声器进行声音的重放。 现如今&#xff0c;音频功放芯片伴随着人工交互及智…

APS中零件工序间的移动方式解析

在加工装配的成批生产类型企业里&#xff0c;由于零件多种多样&#xff0c;工艺路线、加工方法和技术装备千差万别&#xff0c;因而&#xff0c;产品有多种流转方式。一般来说&#xff0c;零件在各道工序间的移动方式主要有顺序移动、平行移动和平行顺序&#xff08;平顺&#…

网络威胁情报:数据的力量

在一个日益互联和数字化的世界中&#xff0c;网络威胁已成为一项重大挑战&#xff0c;可能危及您组织的声誉、财务稳定性和整体运营效率。 事实上&#xff0c;根据 IBM 2022 年的一份报告&#xff0c;数据泄露的平均成本现在为 435 万美元。 鉴于网络威胁的重要性和影响日益突…

Spring《三》DI 依赖注入

&#x1f34e;道阻且长&#xff0c;行则将至。&#x1f353; 上一篇&#xff1a;Spring《二》bean 的实例化与生命周期 下一篇&#xff1a;敬请期待 目录 一、setter 注入&#x1f349;1.注入引用数据类型2.注入简单数据类型 二、构造器注入&#x1f34a;1.注入引用数据类型2.…

吴恩达团队AI诊断心律失常研究:准确率超人类医生

2019年&#xff0c;吴恩达团队在AI医疗领域实现了一项革命性的突破&#xff0c;他们成功地让AI诊断心律失常&#xff0c;其准确率高达83.7%&#xff0c;超过了人类心脏病医生的78.0%。这项研究成果已经发表在了知名期刊Nature Medicine上。 一、如何让AI学会诊断心律失常&…

Linux多媒体子系统02:V4L2核心框架分析

1 V4L2框架结构概述 1.1 imx8视频输入通路硬件结构 软件框架是对硬件结构的映射与描述&#xff0c;所以在说明V4L2框架结构之前先说明一下硬件结构&#xff0c;此处以imx8视频输入通路为例&#xff08;下图中红框部分&#xff09; 1. MIPI-CSI2&#xff08;Camera Serial Int…

测试Ocr工具IronOCR(续:编写图片圈选程序)

上一篇文章学习了IronOCR的基本用法之后&#xff0c;计划做一个加载本地图片后&#xff0c;从图片中圈选某一位置的文字&#xff0c;然后调用IronOCR识别圈选区域文本的程序。本文实现从本地加载图片并完成圈选的功能。   主要的功能包括以下几点&#xff1a;   1&#xff…

提效降本应对无序竞争,采埃孚+东软睿驰的组合样本

降价与降本&#xff0c;就好似车企与供应商之间的“窗户纸”&#xff1b;如果是持续的无序竞争&#xff0c;势必一捅就破。而只有通过产业链的通力协作&#xff0c;才有机会维持一定的平衡。 多元化需求、车企降本、新车开发周期缩短等一系列因素&#xff0c;正在驱动智能化在中…

Spring Security实现JWT token验证

Spring Security实现JWT token验证 Spring Security是Spring提供的一个安全框架&#xff0c;提供认证和授权功能&#xff0c;最主要的是它提供了简单的使用方式&#xff0c;同时又有很高的灵活性&#xff0c;简单、灵活、强大 一般系统里关于角色方面通常有这么几张表&#xf…

【Dubbo核心 详解三】Dubbo服务接口的详解

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Dubbo专栏 文章目录 引言一、简介1. 介绍 Dubbo 服务接口的基本概念和特点1.1 Dubbo 服务接口的基础概念1.2 Dubbo 服务接口的特点2. 介绍 Dubbo 服务接口的…

机器学习——SVM的易错题型

问&#xff1a;支持向量机仅可以用于处理二分类任务 答&#xff1a;错误。支持向量机可以用于处理多分类任务&#xff0c;通过使用一对多或一对一的方法&#xff0c;将多个类别分别与其他类别做二分类。也可以使用多类支持向量机算法&#xff0c;直接将多个类别一起纳入训练和…

路侧激光雷达目标检测系统-篇1

说明&#xff1a;又到了毕业的季节&#xff0c;拿出来我之前做的小雷达识别项目&#xff0c;给学弟学妹们做毕设一点参考。这个主要是根据雷达采集的数据包进行聚类识别&#xff0c;看那些是汽车&#xff0c;更改数据的特征之后可以识别特定目标&#xff0c;比如路上新人等。  …

SpringCloud --- Nacos注册中心

一、认识和安装Nacos Nacos是阿里巴巴的产品&#xff0c;现在是SpringCloud中的一个组件。相比Eureka功能更加丰富&#xff0c;在国内受欢迎程度较高。 二、服务注册到nacos Nacos是SpringCloudAlibaba的组件&#xff0c;而SpringCloudAlibaba也遵循SpringCloud中定义的服务注…

Stable Diffusion公司发布首个大语言模型StableLM,已开源公测!

文 | 智商掉了一地 20号凌晨&#xff0c;Stability AI 发布了一个新的开源语言模型—— StableLM&#xff0c;该公司曾开发了 Stable Diffusion 图像生成工具。这则新闻意味着它不再局限于图像与视频生成领域&#xff0c;将正式加入文本生成 AI 赛道。 StableLM 模型可以生成文…

企业号运营全攻略,让你的品牌更具竞争力

实体企业抖音矩阵运营主要包含以下五个方面&#xff1a;多平台帐号绑定、短视频制作、短视频发布、私信评论维护以及提供数据分析报表。   一、多平台帐号绑定   多平台帐号绑定是实体企业进行抖音矩阵运营的第一步。通过将企业的各种社交账号与抖音账号进行绑定&#xff0…

CoreMark 测试指南

1、coremark 简介 coremark 是由EEMBC提出的一个评价CPU性能指标的跑分软件。其主要目标是测试处理器核心性能。CoreMark程序使用C语言写成&#xff0c;包含如下四类运算法则&#xff1a;数学矩阵操作&#xff08;普通矩阵运算&#xff09;、列举&#xff08;寻找并排序&#…

[2019.01.25]Android NDK Crash错误定位

Android NDK开发Crash错误定位: D:\Users\Android\Sdk ndk-stack.exe: D:\Users\Android\Sdk\ndk-bundle\prebuilt\windows-x86_64\bin aarch64-linux-android-addr2line.exe: D:\Users\Android\Sdk\ndk-bundle\toolchains\ aarch64-linux-android-4.9\prebuilt\windows-x86_64…

六、Golang的并发

Go语言的并发指的是能让某个函数独立于其他函数运行的能力。当一个函数创建为goroutine时&#xff0c;Go会将其视为一个独立的工作单元。这个单元会被调度到可用的逻辑处理器上执行。 Go语言运行时的调度器是一个复杂的软件&#xff0c;能管理被创建的所有goroutine并为其分配执…