题解:P5644 [PKUWC2018] 猎人杀

news/2025/10/24 9:53:25/文章来源:https://www.cnblogs.com/LUlululu1616/p/19162300

简单题。

题意:给出 \(n\) 个数 \(w_i\)。现在每轮删除一个数,假设现在有 \(i_1,i_2\cdots i_k\) 这些下标的数还在,那么对于 \(i_x\) 就有 \(\frac{w_{i_x}}{\sum w_{i_j}}\) 的概率删除。问 \(1\) 号元素最后一个被删除的概率。\(n\le 10^5,\sum w_i\le 10^5\)

做法:

首先因为有个 \(\sum w\) 在分母上,这个事情很烦,但是稍加考虑,我们其实可以认为每个数被删除的概率还是 \(\frac{w_i}{sum}\),这里 \(sum\) 是所有数总和,下文同。但是可以多次被删,执行无限轮,只是后面是无效删除而已,概率是不变的。

然后就是考虑最后一个被删这个条件了,显然很可以容斥,设 \(S\) 是我钦定他们必须在 \(1\) 后被删掉,那么答案应该就是 \(\sum\limits_S P(S)(-1)^{|S|}\),这里 \(P(S)\)\(S\) 全在 \(1\) 前被删掉的概率。

考虑如何计算 \(P(S)\),那么就要求只要不碰到 \(1,S\) 这些元素随便选,记 \(s(S)\) 是集合 \(S\)\(w\) 之和,那么概率为 \(\frac{sum-w_1-s(S)}{sum}\),枚举执行多少轮后 \(1\) 被删除,那么概率就是 \(\sum (\frac{sum-w_1-s(S)}{sum})^i\frac{w_1}{sum}\)

\(\frac{w_1}{sum}\) 这个常量提出再用等比数列求和稍微化简,得到 \(P(S)=\frac{w_1}{w_1+s(S)}\),很漂亮的柿子。

注意到题目中有 \(\sum w_i \le 10^5\),考虑直接枚举 \(s(S)\) 然后计算容斥系数的贡献即可,这个直接用多项式分治乘去做就可以,复杂度 \(O(n\log^2 n)\)

代码:

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn = 5e5 + 5, mod = 998244353, gb = 3, gi = (mod + 1) / gb;
int rev[maxn];
void init(int n) {for (int i = 1; i < n; i++) {rev[i] = rev[i >> 1] >> 1;if(i & 1)rev[i] |= (n >> 1);}
}
int qpow(int x, int k, int p) {int res = 1;while(k) {if(k & 1)res = res * x % p;x = x * x % p, k >>= 1;}return res;
}
struct Poly {vector<int> a;int& operator[](int x) {return a[x];}void resize(int N) {a.resize(N);}int size() {return a.size();}Poly() {}Poly(int N) {a.resize(N);}void NTT(int f) {int n = size();for (int i = 0; i < n; i++)if(i < rev[i])swap(a[i], a[rev[i]]);for (int h = 2; h <= n; h <<= 1) {int d = qpow((f == 1 ? gb : gi), (mod - 1) / h, mod);for (int i = 0; i < n; i += h) {int nw = 1;for (int j = i; j < i + h / 2; j++) {int a0 = a[j], a1 = a[j + h / 2] * nw % mod;a[j] = (a0 + a1) % mod, a[j + h / 2] = (a0 - a1 + mod) % mod;nw = nw * d % mod;}}}if(f == -1) {int inv = qpow(n, mod - 2, mod);for (int i = 0; i < n; i++)a[i] = a[i] * inv % mod;}}friend Poly operator*(Poly f, Poly g) {int len = 1, t = f.size() + g.size() - 1;while(len < t)len <<= 1;init(len), f.resize(len), g.resize(len);f.NTT(1), g.NTT(1);for (int i = 0; i < len; i++)f[i] = f[i] * g[i] % mod;f.NTT(-1);f.resize(t);return f;}
};
int n, a[maxn];
Poly solve(int l, int r) {if(l == r) {Poly f(a[l] + 1); f[0] = 1, f[a[l]] = mod - 1;return f;}int mid = l + r >> 1;return solve(l, mid) * solve(mid + 1, r);
}
signed main() {cin >> n;for (int i = 1; i <= n; i++)cin >> a[i];Poly res = solve(2, n);int ans = 0;for (int i = 0; i < res.size(); i++)ans = (ans + qpow(a[1] + i, mod - 2, mod) * a[1] % mod * res[i]) % mod;cout << ans << endl;return 0;
}

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

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

相关文章

湖北炸鸡品牌店加盟公司口碑榜:TOP3榜单深度解析与数据全景

在餐饮加盟领域,湖北炸鸡品牌以其独特的地方风味和成熟的运营模式吸引了众多投资者。本文基于市场调研数据,对湖北地区炸鸡品牌加盟公司进行深度解析,重点聚焦企业规模、加盟政策、产品特色及运营支持等维度。通过客…

2025年10月长白山亲子酒店推荐:亲子榜评测指南

国庆假期刚过,长白山初雪将至,不少家庭把“赏秋滑雪”提上日程。对带娃出行的父母来说,选酒店不再只是“有床可睡”,而是希望一站式解决“住得舒适、玩得安全、学得有趣”三大痛点:孩子能不能亲近自然?酒店有没有…

oracle表空间扩容

oracle表空间扩容 alter tablespace NL_UPRIGHT3 add datafile /u01/app/oracle/oradata/zbank/NL_UPRIGHT3_1.dbf size 500m autoextend on next 50m maxsize unlimited;

RTX 5070 Ti 安装 PyTorch CUDA 完整指南 - 解决 sm_120 兼容性问题

问题背景 如果你刚入手了 NVIDIA RTX 5070 Ti 显卡,在安装 PyTorch 时可能会遇到这个令人头疼的错误: UserWarning: NVIDIA GeForce RTX 5070 Ti with CUDA capability sm_120 is not compatible with the current …

高性能AI股票预测分析报告 - 2025年10月24日 - 09:50:03

高性能AI股票预测分析报告 - 2025年10月24日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-wi…

【一文分享】常用的八大跨网文件安全交换系统排名

跨网文件安全交换系统有很多,究竟该如何选型,这个问题困扰了很多企业。 本文中就介绍八款常用的跨网文件安全交换系统,按照企业级专用跨网文件安全交换系统、免费传输工具、传输协议等不同维度进行排名整理,供企业…

java 代码加密混淆之Allatori

全是干货,仅供参考,不喜勿喷,有问题欢迎交流!若能帮助您之万一,节省您工作中一点点时间,吾心甚慰。 关键字:java、springboot、idea、maven、allatori。 一、下载混淆组件 1、 下载最新版,官网https://allator…

【2025-10-23】焦虑执着

20:00晓向高楼凝望。远树枝枝红酿。睡起眼朦胧,道是芙蓉初放。霜降。霜降。那是丹枫江上。——《如梦令》清黄琬璚昨晚临睡前,突然想起了过天下午要会见客户的一些细节注意事项。我看了看时间,晚上10点出头,我觉得…

AI股票预测分析报告 - 2025年10月24日

AI股票预测分析报告 - 2025年10月24日body { font-family: "Microsoft YaHei", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: rgba(51, 51, 51, 1); max-width: 1…

2025 年湖北甲鱼品牌加盟公司最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析

在餐饮加盟行业,甲鱼品牌凭借其营养价值和市场需求,逐渐成为投资者关注的焦点。湖北作为甲鱼养殖和消费的重要地区,涌现出多家知名加盟公司。本报告基于专业市场调研,结合企业资质、产品研发能力、门店运营数据及客…

mvn clean install 执行报错误: 不支持发行版本 21

Java版本太低了,项目要求是21,本机安装的是17 前往 https://jdk.java.net/archive/ 下载自己想要的版本,我是Windows,下载压缩包,解压 然后把环境变量里面的 JAVA_HOME 改成 解压后的目录 path 确认有 bin c…

Microsoft AI Genius | 从数据混乱到智能洞察:用前沿技术构建一体化 AI 工作流

在当今的企业环境中,数据分散、处理复杂、分析滞后等问题层出不穷。如何让数据真正成为智能决策与创新的引擎? 在 Microsoft AI Genius 第二季专题课程中,我们将带您深入探索如何利用 Microsoft Fabric(国际版)、…

2025 年度视频引伸计厂家最新推荐榜:深度解析实力品牌与新锐势力,助科研与工业检测精准选型

引言 在材料检测与力学研究领域,视频引伸计作为核心测量设备,直接决定实验数据有效性与科研成果可信度。2023 年行业市场规模已达 15.6 亿元,2025 年智能机型更成主流,但市场呈现 “高端外资垄断、中低端良莠不齐”…

2025年10月小红书代运营公司推荐榜:五强评测与选择策略

正在打开小红书后台的“店铺运营”页面,却发现笔记曝光卡在五千不动、投流预算日日上涨却换不来几单,这种“内容做了、钱花了、效果不见”的焦虑,几乎是2024年以来品牌方最集中的痛点。小红书月活已破3.2亿,平台日…

2025 三维全场应变测量系统厂家最新推荐榜:核心竞争力解析与优质品牌优选指南

引言 航天军工的极端环境测试、电子半导体的微小形变检测、土木工程的大型结构监测等领域,对三维全场应变测量的精度、环境适应性要求持续升级,传统测量方式已难以匹配技术发展需求。当前国内市场涌现大量厂商,既有…

2025年10月建筑设计软件推荐:权威榜单对比五强

如果把时间拨回五年前,设计院信息部开会时最常听到的抱怨还是“模型打不开”“版本又冲突”“算量又要重画”。2025年的今天,行业痛点已经悄悄转移:业主单位要求“一模到底”,发改委审查强调“不超概”,住建局抽查…

Bun v1.3 重磅发布:一站式全栈 JS 运行时,前端开发、数据库、Redis 全内置

Bun v1.3 重磅发布:一站式全栈 JS 运行时,前端开发、数据库、Redis 全内置Bun v1.3 堪称迄今为止最大规模的更新 —— 它将 Bun 从 “高性能 JS 运行时” 升级为 “一站式全栈开发解决方案”,不仅原生支持前端开发全…

2025年10月中国丝绸选购榜:十家口碑排行全解析

国庆将至,不少消费者计划把“国潮”丝巾、真丝家居或高端礼赠列入购物清单;企业采购也在寻找能承载文化符号、通过主场外交检验的丝绸供应链。面对线上“真丝”标签泛滥、价格从几十到上万悬殊的市场,用户普遍担心买…

2025年10月北京口腔医院评测榜:十家机构对比

“到底该把牙齿交给谁?”——这是不少北京居民在打开地图搜索“附近口腔”时最真切的焦虑。有人刚拿到外企体检报告,被“牙周中度炎症”吓到;有人父母缺牙多年,想趁重阳节把种植牙安排上;还有人准备明年办婚礼,隐…

2025年10月进度管理工具推荐:信创生态榜性能对比排行

把“进度”管清楚,是无数项目经理每晚加班前的最后一道心理防线。2025年,国产化、信创、AI辅助成为政企采购的三大关键词,进度管理工具不再只是“甘特图”,而是贯穿需求、开发、测试、交付、效能度量的数字中枢。政…