P6076 [JSOI2015] 染色问题 分析

news/2025/10/20 8:43:44/文章来源:https://www.cnblogs.com/high-sky/p/19151725

题目概述

\(n\times m\) 的棋盘,现在需要涂 \(k\) 种颜色上去,需要满足:

  • 每一行至少有一个格子被涂色。
  • 每一列至少有一个格子被涂色。
  • \(k\) 种颜色必须都在这个棋盘上出现。

数据范围:\(1\leq n,m,k\leq 400\)

分析

经典题目,记录一下。

多重容斥的经典题目。

我们考虑枚举 \(i,j,t\) 表示至少有 \(i\) 行格子被涂色,至少有 \(k\) 行格子被涂色,至少有 \(k\) 种颜色涂了。

所以说:

\[ans=\sum_{i=0}^n\sum_{j=0}^m\sum_{t=0}^k(-1)^{i+j+k}C_{n}^iC_{m}^jC_{k}^t F(i,j,t) \]

其中 \(F(i,j,t)\) 表示这种情况下的方案数是多少。

那么对于剩下的行数、列数的格子有 \((n-i)\times (m-j)\) 个。

每个格子有两种选择:

  • 不被涂色。
  • 涂成剩下 \((k-t)\) 种颜色下的一种。

也就是说,每个格子有 \((k-t+1)\) 种选择,所以:

\[F(i,j,t)=(k-t+1)^{(n-i)\times (m-j)} \]

那么就直接这样做就行了。

代码

时间复杂度 \(\mathcal{O}(nmc)\)

#include <iostream>
#include <cstdio>
#include <cstring>
#include <stdlib.h>
#include <algorithm>
#include <vector>
#define int long long
#define N 405
using namespace std;
const int mod = 1e9 + 7;
int qpow(int a,int b) {int res = 1;while(b) {if (b & 1) res = res * a % mod;a = a * a % mod;b >>= 1;}return res;
}
int jc[N],inv[N];
int C(int a,int b) {if (a < 0 || b < 0 || a < b) return 0;return jc[a] * inv[b] % mod * inv[a - b] % mod;
}
signed main(){jc[0] = jc[1] = inv[0] = inv[1] = 1;for (int i = 2;i < N;i ++) jc[i] = jc[i - 1] * i % mod,inv[i] = (mod - mod / i) * inv[mod % i] % mod;for (int i = 2;i < N;i ++) inv[i] = inv[i - 1] * inv[i] % mod;int ans = 0,n,m,k;cin >> n >> m >> k;for (int i = 0;i <= n;i ++)for (int j = 0;j <= m;j ++)for (int t = 0;t <= k;t ++) {int xs = ((i + j + t & 1) ? -1 : 1);ans = (ans + (xs * C(n,i) * C(m,j) % mod * C(k,t) % mod * qpow((k - t + 1),(n - i) * (m - j)) % mod + mod) % mod) % mod;}cout << ans;return 0;
}

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

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

相关文章

CF2154 Codeforces Round 1060 (Div. 2) 游记

跳过 C2 直接开 D,实现太烂调试过多没时间再写 C2,表现分 $1938$ 勉强稳住紫线。省流 跳过 C2 直接开 D,实现太烂调试过多没时间再写 C2,表现分 \(1938\) 勉强稳住紫线。10.19 内含剧透,请vp后再来。 不是题解!!…

2025 最新推荐!国际物流 / 东南亚 / 跨境电商清关公司排行榜:精选优质机构助企业高效通关

引言当前跨境贸易规模持续扩张,清关作为贸易链条的关键节点,却深陷多重困境。多数机构服务碎片化,仅能覆盖单一环节,难以实现 “货运 - 清关 - 仓储” 全链路衔接,导致货物滞留率居高不下;特殊品类清关经验匮乏,…

C#转java的最好利器easy-query就是efcore4j sqlsugar4j freesql4j

C#转java的最好利器easy-query就是efcore4j sqlsugar4j freesql4j 背景 随着信创或者其他一系列面向领导编程导致部分使用C#的公司转型java,java下EfCore、SqlSugar 、FreeSql的竞品或者替代品就是easy-query 本章节我…

CF2128D Sum of LDS

\(\max(p_i, p_{i + 1}) > p_{i + 2}\) 说明了你在 DP 的过程中只会由 \(p_i, p_{i + 1}\) 转移过来(类似归纳,一定不劣)。 考虑扫描线,设 \(f_i\) 为所有以 \(i\) 为右端点的区间的答案之和,转移时,要么 \(f…

CF2128D Sum of LDS

\(\max(p_i, p_{i + 1}) > p_{i + 2}\) 说明了你在 DP 的过程中只会由 \(p_i, p_{i + 1}\) 转移过来(类似归纳,一定不劣)。 考虑扫描线,设 \(f_i\) 为所有以 \(i\) 为右端点的区间的答案之和,转移时,要么 \(f…

2025.10.20——1黄

普及/提高- P3958 [NOIP 2017 提高组] 奶酪 补题,寒假集训题。

加密货币投资风控方案

加密货币完整可执行的风控方案: 核心风控原则明确最大单笔/累计风险敞口,绝不孤注一掷。[1] 入场前设定止损止盈,执行“先定规则,后交易”。[2] 严格执行仓位管理,分批建仓。[3] 动态复盘和预警,持续优化风控参数…

物联网设备漏洞及其对国家安全的影响分析

本文深入分析物联网设备中的关键安全漏洞,包括Mirai僵尸网络、Reaper僵尸网络、BlueBorne蓝牙漏洞和弱加密漏洞,提供详细的技术描述和概念验证脚本,并探讨这些漏洞对国家安全的潜在影响及相应的防护策略。物联网设备…

完整教程:华硕NUC 15Pro 系列 舒适办公新体验的理想之选

完整教程:华硕NUC 15Pro 系列 舒适办公新体验的理想之选pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas…

Cisco IOS XRv 9000 Router 25.1.2 MD - 服务提供商边缘虚拟路由器

Cisco IOS XRv 9000 Router 25.1.2 MD - 服务提供商边缘虚拟路由器Cisco IOS XRv 9000 Router 25.1.2 MD - 服务提供商边缘虚拟路由器 Cisco IOS XRv 9000 路由器 请访问原文链接:https://sysin.org/blog/cisco-ios-x…

Roslyn 技术解析:如何利用它做代码生成?

Roslyn 技术解析:如何利用它做代码生成?前两天聊了下Roslyn,如果您耐心看完,也算是入了门,那么今天继续分享它的另外一大特性,那就是 Source Generator,(源代码生成器)是 (Roslyn)提供的一项强大功能,它允…

深度学习注意力机制新篇章

深度学习开源教材《动手学深度学习》新增注意力机制章节,详细解析这一革命性技术在计算机视觉和自然语言处理中的应用,包含丰富的代码示例和数学原理,帮助读者掌握这一重要深度学习概念。《动手学深度学习》新增注意…

marmot 基于nats 的sqlite 同步方案

marmot 基于nats 的sqlite 同步方案marmot 是一个基于nats 的sqlite 数据同步方案,内部技术上基于了触发器(所以对于表schema 的变更以及如果添加了新的表,处理上就会有一些技巧了) 参考玩法说明 marmot 对于实时处…

Cisco IOS XRv 9000 Router 24.4.2 MD - 服务提供商边缘虚拟路由器

Cisco IOS XRv 9000 Router 24.4.2 MD - 服务提供商边缘虚拟路由器Cisco IOS XRv 9000 Router 24.4.2 MD - 服务提供商边缘虚拟路由器 Cisco IOS XRv 9000 路由器 请访问原文链接:https://sysin.org/blog/cisco-ios-x…

CSP-S模拟35

CSP-S模拟35 () Code:() Code:() Code:() Code:以下是博客签名,正文无关 本文来自博客园,作者:Wy_x,转载请在文首注明原文链接:https://www.cnblogs.com/Wy-x/p/19151702 版权声明:本作品采用「署名-非商业性…

解密prompt系列62. Agent Memory一览 - MATTS CFGM MIRIX

最近Agent Memory的论文如雨后春笋,我们将重点分析三篇代表性工作: - CFGM:离线轨迹经验提取 - ReasoningBank:轨迹经验提取和test-time scaling结合 - MIRIX:提供完整记忆工程方案和全面记忆分类今天我们再来聊聊…

首款“全国产”高性能GPU发布

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 354695541004908710月19日消息,沐曦集成电路(南京)有限公司日前正式发布首款全国…

MIT推出SEAL框架:实现AI自我迭代新突破

麻省理工学院研究人员提出SEAL框架,使大语言模型能够通过自我编辑生成训练数据,并基于强化学习更新模型权重,在少样本学习和知识整合任务中展现显著效果,标志着自进化AI迈出重要一步。MIT推出SEAL框架:实现AI自我…

2025.10.20+7[未完]

2025.10.20 Week 笔记

k8s api server

Experiencing kube-apiserver response times exceeding 3 seconds is a critical performance issue that can impact cluster stability and reliability. This is often caused by high request loads, resource co…