当前位置: 首页 > news >正文

刷题记录:P8804 [蓝桥杯 2022 国 B] 故障 条件概率

传送门:洛谷

题目描述:

题目较长,此处省略
输入:
3 5
30 20 50
0 50 33 25 0
30 0 35 0 0
0 0 0 25 60
1
3
输出:
2 56.89
1 43.11
3 0.00

读完题目,我们会发现其实题目给了我们两个事件,并且这两个事件是相互关联的.因此不难想到使用条件概率

我们将故障原因看做事件AAA,结合题意,我们共有A1,A2,A3...AnA1,A2,A3...AnA1,A2,A3...An
将故障现象看做事件BBB,我们共有B1,B2,B3...BMB1,B2,B3...BMB1,B2,B3...BM
此时事件A是事件B的条件,事件B是事件A的产生现象,那么此时我们就会发现这是一个条件概率.那么对于此题来说,我们知道了所有的P(Ai)P(A_{i})P(Ai),然后又知道了所有的P(Bi∣Ai)P(Bi|Ai)P(BiAi),然后此时我们知道现象去求起因的概率,此时我们需要使用贝叶斯公式

贝叶斯公式:P(A∣B)=P(B∣A)∗P(A)/P(B)=P(A∩B)/P(B)P(A|B)=P(B|A)*P(A)/P(B)=P(A∩B)/P(B)P(AB)=P(BA)P(A)/P(B)=P(AB)/P(B)

结合到本题来说,我们的AAA代表了每一个AiA_{i}Ai,我们的BBB代表的是所有k个故障现象的发生.那么对于我们的P(Ai∩B)P(Ai∩B)P(AiB)来说,就是aiaiai发生的同时,b1...bjb1...bjb1...bj也发生的概率.对于我们的P(B)P(B)P(B)来说,就是无所谓aiaiai发不发生,b1...bjb1...bjb1...bj也发生的概率.

那么显然的我们的P(Ai∩B)=P[Ai]∗P[Ai][Bj]∗(1−P[Ai][Bk])P(Ai∩B)=P[Ai]*P[Ai][Bj]*(1-P[Ai][Bk])P(AiB)=P[Ai]P[Ai][Bj](1P[Ai][Bk])BjBjBj表示发生的现象,BkBkBk表示没发生这个现象
我们的P(B)=∑1nP(Ai∩B)P(B)=\sum_{1}^n{P(Ai∩B)}P(B)=1nP(AiB)

至此,我们的这一道题也就解决了.

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define root 1,n,1
#define ls rt<<1
#define rs rt<<1|1
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
inline ll read() {ll x=0,w=1;char ch=getchar();for(;ch>'9'||ch<'0';ch=getchar()) if(ch=='-') w=-1;for(;ch>='0'&&ch<='9';ch=getchar()) x=x*10+ch-'0';return x*w;
}
#define maxn 1000000
const double eps=1e-8;
#define	int_INF 0x3f3f3f3f
#define ll_INF 0x3f3f3f3f3f3f3f3f
int n,m;double p2[200][200];double p1[maxn];double p3[maxn];
int check[maxn];
struct Ans{int a;double b;bool operator < (const Ans &rhs) const {if(b==rhs.b) return a<rhs.a;else return b>rhs.b;}
};
int main() {n=read();m=read();for(int i=1;i<=n;i++) cin>>p1[i];for(int i=1;i<=n;i++) {for(int j=1;j<=m;j++) {cin>>p2[i][j];}}int k=read();for(int i=1;i<=k;i++) {int num=read();check[num]=1;}double sum=0;for(int i=1;i<=n;i++) {p3[i]=p1[i];for(int j=1;j<=m;j++) {if(check[j]) {p3[i]=p3[i]*p2[i][j]/100;}else {p3[i]=p3[i]*(100-p2[i][j])/100;}}sum+=p3[i];}vector<Ans>ans;for(int i=1;i<=n;i++) {ans.push_back({i,p3[i]/sum});}sort(ans.begin(),ans.end());for(int i=0;i<ans.size();i++) {printf("%d %.2lf\n",ans[i].a,ans[i].b*100);}return 0;
}

相关文章:

刷题记录:P8804 [蓝桥杯 2022 国 B] 故障 条件概率

传送门:洛谷 题目描述: 题目较长,此处省略 输入: 3 5 30 20 50 0 50 33 25 0 30 0 35 0 0 0 0 0 25 60 1 3 输出: 2 56.89 1 43.11 3 0.00读完题目,我们会发现其实题目给了我们两个事件,并且这两个事件是相互关联的.因此不难想到使用条件概率 我们将故障原因看做事件AAA,结合…...

【算法】常用的基础数论

作者&#xff1a;指针不指南吗 专栏&#xff1a;算法篇 &#x1f43e;或许会很慢&#xff0c;但是不可以停下&#x1f43e; 文章目录1.GCD&LCM2.判断素数(质数)3.分解质因子1.GCD&LCM 最大公约数&最小共倍数 欧几里得算法——高效 //最大公约数 int gcd(int x,i…...

云原生场景下的容器网络隔离技术

云原生场景下的容器网络隔离技术 一、研究背景 随着云计算时代的到来&#xff0c;尤其是容器化技术的飞速发展&#xff0c;云原生作为云计算的未来阶段&#xff0c;其安全势必成为云安全的主要战场。从目前的云原生环境来看&#xff0c;云原生网络安全问题层出不穷&#xff0…...

用python绘制有向图

目录 添加边权重的有向图思路介绍代码实现效果图设置不同的样式节点和边的有向图思路介绍代码实现效果图下面的Python代码用于绘制有向图,其中使用了 networkx和 matplotlib.pyplot等库。 添加边权重的有向图 思路介绍 首先,创建了一个空的有向图像对象G,并添加了4个节点…...

Spring MongoDB 开发教程(一)—官方原版

MongoDB支持包含一系列功能&#xff1a;Spring配置支持基于Java的configuration类或Mongo驱动程序实例和副本集的XML命名空间。MongoTemplate帮助类&#xff0c;在执行常见的Mongo操作时提高生产力。包括文档和POJO之间的集成对象映射。将异常转换为Spring的可移植数据访问异常…...

数据结构——二叉搜索树

一、二叉搜索树概念 二叉搜索树又叫二叉排序树&#xff0c;它或是空树&#xff0c;或是具有以下性质的二叉树&#xff1a; &#xff08;1&#xff09;若它的左子树不为空&#xff0c;则左子树上的所有节点的值都小于根节点的值&#xff1b; &#xff08;2&#xff09;若它的…...

23年5月高项学习笔记3---项目管理概述

项目是创造独特的产品、服务或成果而进行的临时性的工作 独特&#xff1a;每个项目都不一样 可交付成果&#xff1a;某一过程&#xff0c;阶段或项目完成时形成的独特的并且可验证的产品、服务或成果。 临时的&#xff1a;明确的起点和终点、 -------- 项目集&#xff1a; 相…...

【组织架构】中国铁路成都局集团有限公司

0 参考 中国铁路成都局集团有限公司 1 公司介绍 中国铁路成都局集团有限公司&#xff0c;是中国国家铁路集团有限公司管理的18个铁路局集团有限公司之一&#xff0c;简称“成局”&#xff0c;地处中国西南&#xff0c;管辖范围辐射四川、贵州、重庆地区。管内地形复杂&#x…...

剧前爆米花--爪哇岛寻宝】java多线程案例——单例模式、阻塞队列及生产者消费者模型、定时器、线程池

作者&#xff1a;困了电视剧 专栏&#xff1a;《JavaEE初阶》 文章分布&#xff1a;这是关于java多线程案例的文章&#xff0c;进行了对单例模式、阻塞队列及生产者消费者模型、定时器和线程池的讲解&#xff0c;希望对你有所帮助&#xff01; 目录 单例模式 懒汉模式实现 饿…...

Guitar Pro8中文版更新说明及系统要求介绍

Guitar Pro吉他软件是初学作曲&#xff0c;特别是同时又初学吉他的朋友们的良师益友&#xff0c;是一款极佳的初级软件&#xff0c;是非实时作曲软件之中的一件佳作。Guitar Pro在吉他和弦、把位的显示、推算、查询、调用等方面&#xff0c;也异常方便、简洁、直观和浩瀚&#…...

【id:19】【20分】A. 三数论大小(引用)

题目描述 输入三个整数&#xff0c;然后按照从大到小的顺序输出数值。 要求&#xff1a;定义一个函数&#xff0c;无返回值&#xff0c;函数参数是三个整数参数的引用&#xff0c;例如int &a, int &b, int &c。在函数内对三个参数进行排序。主函数调用这个函数进行…...

To_Heart—总结——FWT(快速沃尔什变换)

目录闲话拿来求什么或与异或闲话 这个比FFT简单了很多呢&#xff0c;&#xff0c;大概是我可以学懂的水平&#xff01; 好像是叫 快速沃尔什变换 &#xff1f; 拿来求什么 以 FFT 来类比。我们 FFT 可以在 O(nlogn)\mathrm{O(nlogn)}O(nlogn) 的复杂度下实现求解&#xff1…...

Google巨大漏洞让Win10、11翻车,小姐姐马赛克白打了

早年间电脑截图这项技能未被大多数人掌握时&#xff0c;许多人应该都使用过手机拍屏幕这个原始的方式。 但由于较低的画面质量极其影响其他用户的观感&#xff0c;常常受到大家的调侃。 但到了 Win10、11 &#xff0c;预装的截图工具让门槛大幅降低。 WinShiftS 就能快速打开…...

腾讯云服务器部署内网穿透(让其他人在不同ip可以访问我们localhost端口的主机项目)(nps开源项目)

首先打开shell连接我们的云服务器 然后我们再opt目录下面创建一个文件夹用来存放我们的压缩包和文件 mkdir /opt/nps 这个是它官方的安装图解.所以我们按照这个docker安装过程来: 然后我们用docker安装镜像.这样的话比较简单一点 docker pull ffdfgdfg/nps 然后我们查看docker…...

IDS、恶意软件、免杀技术、反病毒技术、APT、对称加密、非对称加密以及SSL的工作过程的技术介绍

IDS的简单介绍IDS是&#xff1a;入侵检测系统&#xff08;intrusion detection system&#xff0c;简称“IDS”&#xff09;是一种对网络传输进行即时监视&#xff0c;在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于&…...

怎么把pdf转换成高清图片

怎么把pdf转换成高清图片&#xff1f;可以使用以下两种方法&#xff1a; 方法一&#xff1a;使用Adobe Acrobat Pro DC 1、打开需要转换的PDF文件&#xff0c;点击“文件”菜单中的“导出为”&#xff0c;在弹出的菜单中选择“图像”&#xff0c;然后选择“JPEG”。 2、在“…...

MATLAB 系统辨识 + PID 自动调参

系统辨识 PID 自动调参 文章目录系统辨识 PID 自动调参1. 导入数据1.1 从 Excel 中导入数据2. 系统辨识3. PID 自动调参1. 导入数据 1.1 从 Excel 中导入数据 如果不是从Excel中导入可以跳过该步骤 导入函数&#xff1a; [num,txt,raw]xlsread(xxx\xxx.xlsx);num返回的是…...

【vue3】组合式API之setup()介绍与reactive()函数的使用·上

>&#x1f609;博主&#xff1a;初映CY的前说(前端领域) ,&#x1f4d2;本文核心&#xff1a;setup()概念、 reactive()的使用 【前言】vue3作为vue2的升级版&#xff0c;有着很多的新特性&#xff0c;其中就包括了组合式API&#xff0c;也就是是 Composition API。学习组合…...

爬虫Day3 csv和bs4

爬虫Day3 csv和bs4 一、CSV的读和写 1. 什么是csv文件 csv文件叫做&#xff1a;逗号分隔值文件&#xff0c;像Excel文件一样以行列的形式保存数据&#xff0c;保存数据的时候同一行的多列数据用逗号隔开。 2. csv文件的读写操作 1) csv文件读操作 from csv import reader…...

nnAudio的简单介绍

官方实现 https://github.com/KinWaiCheuk/nnAudio&#xff1b; 论文实现&#xff1a; nnAudio: An on-the-Fly GPU Audio to Spectrogram Conversion Toolbox Using 1D Convolutional Neural Networks&#xff1b; 以下先对文章解读&#xff1a; abstract 在本文中&#x…...

Taotoken CLI工具安装与一键配置全模型环境指南

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Taotoken CLI工具安装与一键配置全模型环境指南 对于需要接入多个大模型服务的开发团队而言&#xff0c;统一管理API密钥、模型配置…...

深度解析网易游戏NPK文件解包:从二进制迷宫到资源提取的完整实战指南

深度解析网易游戏NPK文件解包&#xff1a;从二进制迷宫到资源提取的完整实战指南 【免费下载链接】unnpk 解包网易游戏NeoX引擎NPK文件&#xff0c;如阴阳师、魔法禁书目录。 项目地址: https://gitcode.com/gh_mirrors/un/unnpk 你是否曾经好奇网易热门游戏如《阴阳师》…...

PromethAI-Backend:构建标准化AI智能体后端框架的工程实践

1. 项目概述与核心价值最近在折腾AI应用开发&#xff0c;特别是想搞一个能处理复杂工作流的智能体系统&#xff0c;发现了一个挺有意思的开源项目——PromethAI-Backend。这名字听着就有点“普罗米修斯”盗火种给人类的意思&#xff0c;挺形象的&#xff0c;它本质上就是一个为…...

Git Hooks与代码质量左移:self-review工具实战指南

1. 项目概述&#xff1a;从“自我审查”到“代码质量守护者”最近在GitHub上看到一个挺有意思的项目&#xff0c;叫motiful/self-review。光看名字&#xff0c;你可能会觉得这又是一个关于代码审查流程或者团队协作规范的工具。但点进去仔细研究后&#xff0c;我发现它的定位非…...

JetBrains IDE试用期重置技术全解析:从原理到实战的开发者指南

JetBrains IDE试用期重置技术全解析&#xff1a;从原理到实战的开发者指南 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter 在JetBrains IDE生态系统中&#xff0c;试用期管理是每个开发者都会面临的实际问题。ide…...

告别闪烁!用STM32和Multisim搞定LED PWM调光,从仿真到实战保姆级教程

从零构建无频闪LED调光系统&#xff1a;STM32硬件PWM与Multisim滤波电路全解析 当你在深夜伏案工作时&#xff0c;台灯突然出现肉眼可见的闪烁&#xff1b;当你在实验室观察培养样本时&#xff0c;光源的不稳定导致数据出现偏差——这些恼人的场景背后&#xff0c;往往隐藏着L…...

Dify应用开发入门:通过示例项目快速掌握低代码AI工作流构建

1. 项目概述&#xff1a;一个开箱即用的Dify应用示例最近在折腾AI应用开发&#xff0c;发现很多朋友对Dify这个平台很感兴趣&#xff0c;但往往卡在“从零到一”的第一步。看到一个叫“chen-banxia/dify-application-sample”的项目&#xff0c;感觉它正好解决了这个痛点。这本…...

GanttProject项目管理软件:完全免费的甘特图工具使用指南

GanttProject项目管理软件&#xff1a;完全免费的甘特图工具使用指南 【免费下载链接】ganttproject Official GanttProject repository. 项目地址: https://gitcode.com/gh_mirrors/ga/ganttproject GanttProject是一款功能强大的免费开源项目管理软件&#xff0c;专为…...

Spring Boot集成ChatGPT:构建私有化AI对话服务的完整指南

1. 项目概述&#xff1a;一个开箱即用的Spring Boot ChatGPT Web应用最近在GitHub上看到一个挺有意思的项目&#xff0c;叫PlexPt/chatgpt-online-springboot。光看名字&#xff0c;你大概就能猜到它的核心&#xff1a;一个基于Spring Boot框架&#xff0c;将ChatGPT能力封装成…...

JetBrains IDE试用期重置终极指南:如何免费获得30天完整试用期

JetBrains IDE试用期重置终极指南&#xff1a;如何免费获得30天完整试用期 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter 你是否正在使用JetBrains IDE进行开发&#xff0c;却面临试用期到期的困扰&#xff1f;无…...