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

214. Devu和鲜花

214. Devu和鲜花 - AcWing题库

a_{1}+a_{2}+a_{3}+...+a_n = m

如果每个盒子里的花的数量是无限的,用隔板法可以得出答案是 C_{n + m - 1}^{n - 1}

现在每个盒子中区的花数要满足n个条件a_i<=A_i

我们可以求答案的补集,用全部方案数减去补集方案数

每一个不符合条件的要求为a_i>A_i,设为Bi

补集方案数为\sum B_i-\sum (B_i\bigcap B_j ) + ...就成了一个容斥原理

对于一个不符合要求的是C_{n+m-1-(a_i+1)}^{n-1},这就相当于先把ai+1个减了再用隔板法

多个以此类推

#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl '\n'using namespace std;typedef pair<int, int> PII;
typedef long long ll;
typedef long double ld;const int N = 30, mod = 1e9 + 7;ll n, m;
ll A[N];
int down = 1;int qmi(int a, int k)
{int res = 1;while(k){if(k & 1)res = (ll)res * a % mod;a = (ll)a * a % mod;k >>= 1;}return res;
}int C(ll a, ll b)
{if(a < b)return 0;ll up = 1;for(ll i = a; i > a - b; i --)up = i % mod * up % mod;return up * down % mod;
}int main()
{IOScin >> n >> m;for(int i = 0; i < n; i ++)cin >> A[i];for(int i = 2; i <= n - 1; i ++)down = (ll)down * i % mod;down = qmi(down, mod - 2);int num = 1 << n;ll ans = 0;for(int i = 0; i < num; i ++){ll a = m + n - 1, b = n - 1;int cnt = 0;for(int j = 0; j < n; j ++){if(i >> j & 1){a -= A[j] + 1;cnt ++;}}if(cnt & 1)ans = (ans - C(a, b)) % mod;else ans = (ans + C(a, b)) % mod;}cout << (ans + mod) % mod;return 0;
}

相关文章:

214. Devu和鲜花

214. Devu和鲜花 - AcWing题库 如果每个盒子里的花的数量是无限的&#xff0c;用隔板法可以得出答案是 现在每个盒子中区的花数要满足n个条件 我们可以求答案的补集&#xff0c;用全部方案数减去补集方案数 每一个不符合条件的要求为&#xff0c;设为Bi 补集方案数为就成了…...

【C++初阶(三)引用与内联函数】

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…...

RK3288 Android11 mini-pcie接口 4G模组EC200A适配(含自适应功能)

这里写目录标题 1、修改驱动内核配置①使能USBNET功能②使能 USB 串口 GSM、CDMA 驱动③使能 USB 的 CDC ACM模式④使能PPP功能 2、使用lsusb命令查看是否识别到usb接口的“EC200A”4G模组3、在drivers/usb/serial/option.c添加VID和PID信息①添加VID和PID定义②在option_ids 数…...

Windows安装Jenkins

JDK 11 以上 https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.20%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.20_8.msi https://www.jenkins.io/download/ 下载windows安装版本 授权用户administrator logon as services windows(server)安装…...

计算属性,侦听属性,方法区别及例子

计算属性、监听属性和方法都是Vue中的重要概念&#xff0c;但它们在功能和使用上有所不同&#xff1a; 计算属性&#xff1a;计算属性是基于依赖进行缓存的属性&#xff0c;可以根据其他数据动态计算得出。计算属性会根据依赖自动更新&#xff0c;但是只有在其所依赖的数据发生…...

Windows工业三防平板全功能NFC近距离感应一维/二维扫描

Windows系统工业三防平板电脑是一种在智慧工厂仓储物流、MES数采、车载设备、设备检测、自动化控制等领域广泛应用的先进设备。此外&#xff0c;它还在公共服务领域&#xff0c;如高速交通、物流运输、电力检测、公务执法、银行金融、船舶装备、户外勘测、建筑工程、汽车检测、…...

git远端协同开发、解决冲突、分支合并、gitlab使用、远程仓库回滚、为开源项目贡献代码、git工作流,git pull和git fetch,变基

协同开发 避免冲突 张三&#xff1a;改了 settings.py 第一行&#xff0c;提交了 李四&#xff1a;改了 settings.py 第二行&#xff0c;提交了 你也在改setting.py ,没有拉取代码&#xff0c;不知道他们提交了&#xff0c;动了第二行&#xff0c;但是跟李四代码不一样 你要…...

ims-go项目搭建

通过集成开发工具Goland创建项目 整合Gin框架&#xff0c;在终端中输入如下命令&#xff1a; go get -u github.com/gin-gonic/gin 整合Gorm&#xff0c;安装命令如下&#xff1a; go get -u gorm.io/gorm 安装sqlserver驱动&#xff0c;安装命令如下&#xff1a; go get -u…...

2022最新版-李宏毅机器学习深度学习课程-P26 Recurrent Neural Network

RNN 应用场景&#xff1a;填满信息 把每个单词表示成一个向量的方法&#xff1a;独热向量 还有其他方法&#xff0c;比如&#xff1a;Word hashing 单词哈希 输入&#xff1a;单词输出&#xff1a;该单词属于哪一类的概率分布 由于输入是文字序列&#xff0c;这就产生了一个问…...

【Qt控件之QButtonGroup】概述及使用

概述 QButtonGroup 类提供了一个容器来组织一组按钮部件。 QButtonGroup 提供了一个抽象容器&#xff0c;可以将按钮部件放置其中。它不提供此容器的可视表示&#xff08;请参见 QGroupBox&#xff0c;用于容器部件&#xff09;&#xff0c;而是管理组中每个按钮的状态。 一个…...

【开源分享】基于Html开发的房贷计算器,模仿新浪财经

房贷计算器是一种房贷计算的在线计算Web应用&#xff0c;按用户选择的贷款类型、贷款金额、期限、利率可计算得出每月月供参考、支付利息、还款总额这些信息。本文模仿新浪财经开发的房贷计算器。 作品预览 https://fangdai.gitapp.cn 源码地址 https://github.com/geeeeeee…...

ftp文件上传缓慢问题

问题描述 某环境下&#xff0c;通过vsftp上传文件缓慢。 问题分析 这个问题是由于服务器DNS导致&#xff0c;如果在内网机器中&#xff0c;配置了公网的DNS或者其他不能链接的DNS&#xff0c;会导致上传缓慢。 解决方案 目前有两种解决方式&#xff0c;任选其一即可&#…...

【周末闲谈】VR新视界,“眼”见未来

个人主页&#xff1a;【&#x1f60a;个人主页】 系列专栏&#xff1a;【❤️周末闲谈】 系列目录 ✨第一周 二进制VS三进制 ✨第二周 文心一言&#xff0c;模仿还是超越&#xff1f; ✨第二周 畅想AR 文章目录 系列目录前言虚拟现实(VR)技术虚拟现实技术的原理虚拟现实技术发…...

CSRF和XSS是什么?

CSRF&#xff08;Cross-site request forgery&#xff09;&#xff1a;跨站请求伪造。 用户是网站A的注册用户&#xff0c;且登录进去&#xff0c;于是网站A就给用户下发cookie。 满足条件&#xff1a; &#xff08;1&#xff09;登录受信任网站A&#xff0c;并在本地生成Cook…...

【Machine Learning】01-Supervised learning

01-Supervised learning 1. 机器学习入门1.1 What is Machine Learning?1.2 Supervised learning1.3 Unsupervised learning 2. Supervised learning2.1 单元线性回归模型2.1.1 Linear Regression Model&#xff08;线性回归模型&#xff09;2.1.2 Cost Function&#xff08;代…...

《视觉 SLAM 十四讲》V2 第 8 讲 视觉里程计2 【如何根据图像 估计 相机运动】【光流 —> 直接法】

OpenCV关于 光流的教程 文章目录 第 8 讲 视觉里程计 28.2 光流8.3 实践&#xff1a; LK 光流 【Code】本讲 CMakeLists.txt 8.4 直接法8.5 实践&#xff1a; 双目的稀疏直接法 【Code】8.5.4 直接法的优缺点 习题 8√ 题1 光流方法题2题3题4题5 第 8 讲 视觉里程计 2 P205 …...

Unity DOTS System与SystemGroup概述

最近DOTS终于发布了正式的版本, 我们来分享以下DOTS里面System关键概念&#xff0c;方便大家上手学习掌握Unity DOTS开发。 对惹&#xff0c;这里有一个游戏开发交流小组&#xff0c;希望大家可以点击进来一起交流一下开发经验呀&#xff01; System是迭代计算与处理World中的…...

IDEA使用内置database数据库连接mysql报错:javax.net.ssl.SSLHandshakeException

参考一些博客的方式&#xff1a; 使用idea内置database连接数据库报错javax.net.ssl.SSLHandshakeException: No appropriate protocol_idea database ssl_你当像山的博客-CSDN博客 他们的方式是&#xff1a;在url后添加useSSLfalse 介绍另外一种方式&#xff1a; 点击datab…...

从Flink的Kafka消费者看算子联合列表状态的使用

背景 算子的联合列表状态是平时使用的比较少的一种状态&#xff0c;本文通过kafka的消费者实现来看一下怎么使用算子列表联合状态 算子联合列表状态 首先我们看一下算子联合列表状态的在进行故障恢复或者从某个保存点进行扩缩容启动应用时状态的恢复情况 算子联合列表状态主…...

CSS3 按钮

创建 CSS3 按钮可以通过组合样式属性和伪类来实现 <!DOCTYPE html> <html> <head><link rel"stylesheet" type"text/css" href"styles.css"> </head> <body><button class"basic-button">…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

如何在网页里填写 PDF 表格?

有时候&#xff0c;你可能希望用户能在你的网站上填写 PDF 表单。然而&#xff0c;这件事并不简单&#xff0c;因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件&#xff0c;但原生并不支持编辑或填写它们。更糟的是&#xff0c;如果你想收集表单数据&#xff…...