首页 > 其他分享 >[BZOJ2839] 集合计数

[BZOJ2839] 集合计数

时间:2024-12-30 10:08:21浏览次数:6  
标签:等比数列 计数 交集 sum 套路 BZOJ2839 choose 集合

思路

直接计算不好计算, 套路的, 考虑「至少」「至多」来转化

容易发现你「钦定」\(k\) 个元素在交集之中, 也就是说交集大小「至少」为 \(k\) , 怎么处理这个的方案数, 其实比较容易可以发现, 这个的方案数为

\[f(k) = {n \choose k} \sum_{i = 0}^{n - k} 2^i \]

不够优, 考虑转化, 这是一个等比数列, 等比数列求和带进去发现

\[f(k) = {n \choose k} (2^{2^{n - k}} - 1) \]

带进套路里, 令 \(g(k)\) 表示「恰好」选择了 \(k\) 个元素在交集之中

你容易发现

\[f(k) = \sum_{i = k}^{n} {n \choose i} g(i) \iff g(k) = \sum_{i = k}^{n} (-1)^{i - k} {n \choose i} f(i) \]

套进去算即可

总结

常见套路, 板子题

注意很多问题要带一个组合数表示选择那些

标签:等比数列,计数,交集,sum,套路,BZOJ2839,choose,集合
From: https://www.cnblogs.com/YzaCsp/p/18640233

相关文章

  • 第7章 集合
    第7章集合7.1枚举下图展示了部分集合接口:​​7.1.1IEnumerable​​和IEnumerator​​​IEnumerator​声明如下:publicinterfaceIEnumerator{ objectCurrent{get;} boolMoveNext(); voidReset();}​Reset​​方法存在的目的主要是COM互操作;而其他......
  • 基于yolo11的海洋生物检测与计数系统(海参、海胆、扇贝、海星)
    基于yolo11的海洋生物检测与计数系统(海参、海胆、扇贝、海星)......
  • 【Image J】——批量进行细胞荧光染色图像计数
       上期“【ImageJ】荧光染色图像处理”介绍如何使用ImageJ软件处理不清晰或“难看”的荧光染色照片,以及将两张或多张荧光染色图片进行merge操作的方法。本期将介绍如何使用ImageJ软件对EDU或其他荧光染色图片的细胞进行批量计数方法。今日份干货分享导航:1 批量计......
  • Wend看源码-Java-集合学习(Queue)
    概述   Wend看源码-Java-集合学习(List)-CSDN博客    Wend看源码-Java-集合学习(Set)-CSDN博客    在前两篇文章中,我们分别探讨了Java集合框架的父类以及List集合和Set集合的实现。接下来,本文将重点阐述Java中的Queue集合,包括其内部的数据结构以及核心方......
  • Java集合
    Java集合单列集合ListArrayListLinkedListVectorArrayList、LinkedList、Vector区别SetHashSetLinkedHashSet双列集合HashMap常用API方法哈希冲突HashMap特点TreeMap单列集合数据存储在一列,继承Collection接口CollectionList:存储列表数据ArrayList:底层数......
  • 学习012-02-03-14 How to: Reorder an Action Container‘s Actions Collection(如何:对
    Howto:ReorderanActionContainer’sActionsCollection(如何:对操作容器的操作集合进行重新排序)InanXAFapplicationUI,ActionsarelocatedwithinActionContainers.YoucanusetheActionBase.CategorypropertyandtheApplicationModel’sActionDesign......
  • UML之集合类型
    无论何时当我们要使用一个多值对象时,我们必须要清楚两个问题,一是这些值的顺序重要吗?二是允许重复值的存在吗?在编程语言中还会有其他的明确的信息,在UML中,只需明确这两个问题的答案即可确定对应的集合类型。1.SetSet是一个不允许存在重复值且未排序的集合。例如一个骑行活动中,有......
  • 基于OpenCv的车辆检测&计数
    项目描述:在截取一段公路上车流量视频,通过OpenCv识别经过的车辆并进行计数统计。汽车视频素材MP4 本项目实践目的旨在学习运用OpenCV知识,所以只截取了视频的一部分目录一、所用到的OpenCv知识:二、项目实现流程1将车流量视频加载出来2通过形态学识别车辆2.1前景/背......
  • java面试题-集合篇
    Collection1.Collection有哪些类?Java集合框架中的Collection接口是所有集合类的基础接口,定义了一些基本的集合操作,如添加元素、删除元素、判断是否包含某个元素等。常见的集合类包括List、Set和Queue。ListList接口定义了按照索引访问和操作元素的方法。它允许元素重复,......
  • java 多线程处理list集合数据的实例应用
    众所周知创建线程的三种方式:继承Thread,重写run方法实现Runnable接口,重新run方法实现Callable接口,重写call方法下面使用Callable,来说一下为什么使用1.Thread类和Runnable接口都不允许声明检查型异常,也不能定义返回值。没有返回值这点稍微有点麻烦。不能声明抛出检查型异常则......