FJUT OJ 2466 T^T的叛乱计划(组合数学)
T^T的叛乱计划
话说FJUT_ACM在Home_Z的领导下,日益壮大,在整个FJUT也有了不小的名声。邪恶的T^T不甘受制于人,启动了一个秘密计划,要从Home_Z的手中发动暴乱,从而夺取管理权。
T^T在组织内秘密串通了n个人,并制作了n个绝密令牌,要将n个令牌分给n个人。
为了方便管理,每个令牌上都写了一个数字k,并且每个令牌上的数字互不相同。
每个人在FJUT_ACM内有一个工号z,但是由于各种层级关系混乱,每个人的工号并不是互不相同的。
这就很头疼了。。不能建立一种一一对应的关系。于是T^T想在分发号码牌的时候,必须保证每个人的工号 大于或等于 令牌上的数字。
那么请计算这样分发令牌的话有多少种互不相同的方法。(只要有任意一个人拿到不一样的令牌即为不同的方法)
第一行输入一个T表示测试数据的组数
每组数据第一行是一个n(1<=n<=105)
接下来一行有n个数字表示第i个令牌上的数字ki。
下一行有n个数字表示第i个召集的成员的工号zi。
(1<=ki,zi<=1e9)
每个测试样例先输出"Case #x: A"。x表示当前是第几个测试数据。A表示答案。由于答案会很大,请输出A%(109+7)的结果。
3 5 1 2 3 4 5 1 2 3 4 5 2 1 3 2 2 3 2 3 4 6 3 5
Case #1: 1 Case #2: 0 Case #3: 4 分析:对于工号较小的人能够发的令牌,对于编号较大的人也一定能发布。所以能够发布的令牌数量随工号的增大而增大。比如对于最小的工号能够颁发 r个,第二小的工号能够颁发k个(k一定大于等于r)那么最小的工号,就要在r个中选一个,第二小的工号在(k-1)个中选一个,以此类推代码如下:
#include <iostream> #include <algorithm> using namespace std; typedef long long LL; const int MAXN=1e5+10; const LL MOD=1e9+7; LL t,n; LL a[MAXN]; LL b[MAXN]; int main() {LL Case=0;LL ans;ios::sync_with_stdio(false);cin>>t;while(t--){Case++; cin>>n;for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++)cin>>b[i];sort(a+1,a+n+1);sort(b+1,b+n+1); int k=1;ans=1;for(int i=1;i<=n;i++){while(k<=n&&a[k]<=b[i])k++;ans=ans*(k-i)%MOD;} cout<<"Case #"<<Case<<": "<<ans<<endl;}return 0; }
转载于:https://www.cnblogs.com/a249189046/p/8444867.html
FJUT OJ 2466 T^T的叛乱计划(组合数学)相关推荐
- 循环相乘取整法C语言,华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...
题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...
- All Of ACM
数据结构和算法专栏,我会什么写什么 = = 不定时更新 一.数据结构 树状数组详解 线段树详解 二.算法 KMP算法 三.板子 我的代码模板 大整数模板 四.题解报告 几道STL题目(FJUT - ...
- 关于ACM,关于CSU
原文地址:http://tieba.baidu.com/p/2432943599 前言: 即将进入研二,ACM的事情也渐渐远去,记忆终将模糊,但那段奋斗永远让人热血沸腾.开个贴讲讲ACM与中南的故事, ...
- 北邮oj题库刷题计划(更新ing)
北邮oj题库刷题计划(更新ing) 83. A + B Problem 84 Single Number 85. Three Points On A Line 120 日期 121 最值问题 122 ...
- LJJ王国的致富修路计划 sdut oj
LJJ王国的致富修路计划 Problem Description 众说周知LJJ王国有着奇异的结构,因为LJJ国王喜欢素数,所以王国里的路的结构都和素数有关.现在LJJ国王又双叒叕修路了.现有n个要连 ...
- OJ每日一练——津津的储蓄计划
问题描述: 津津的零花钱一直都是自己管理.每个月的月初妈妈给津津300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那 ...
- sdut oj 3474 汤圆の拯救计划
汤圆の拯救计划 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 又到了汤圆星球一年一度 ...
- CSU OJ:1427 谭松松的旅游计划(LCA)
谭松松的旅游计划 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
- BZOJ 2135 刷题计划(贪心,求导,二分)【BZOJ 修复工程】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/2135 是 hydro 的 BZOJ ...
最新文章
- 登陆窗体与主窗体的跳转 C# (转载自网络)
- delegate委托
- 知识图谱学习小组学习大纲
- iOS UIModalPresentationFormSheet风格下的键盘隐藏
- Construct Maximum Binary Tree
- 跑了 13 种编程语言的 Hello World,可视化后有了新发现!
- 系统调用跟我学(4)
- 计算机网络-自顶向下方法笔记-滑动窗口协议
- WireGuard 教程:使用 DNS-SD 进行 NAT-to-NAT 穿透
- [c++]小数处理ceil, floor, round
- 热门的XDR到底是一类什么样安全产品?
- 每日一练 — 2021.12.30
- 【直击DTCC】浪潮霍俊路详解数据库集群锁机制管理
- 打印机有重影问题解决方案
- 利用CodeMirror构建在线IDE随记
- Android OnDeviceAppPrediction 优化
- 常见ant命令及其用法
- RTL-8201以太网芯片外围电路
- 2022-2028全球与中国钇钡铜氧化物超导体(YBCO)市场现状及未来发展趋势
- 无线充电比有线充电更慢吗?
热门文章
- 在 python中每个模块用什么来实现_Python代码模块热更新机制实现(reload)
- react中使用create-react-app创建项目执行函数两次
- 细节定成败!汕头网络推广提醒你在做网站内容收录时需注意什么?
- 如何更科学的进行SEO优化?保持排名稳定
- 雷卷 java,阿里巴巴资深技术专家雷卷:值得开发者关注的 Java 8 后时代的语言特性...
- 判读一个对象不为空_LabVIEW面向对象编程_初窥门径(3):开发实践
- Could not find method google() for arguments [] on repository container.
- Finding Similar Items 文本相似度计算的算法——机器学习、词向量空间cosine、NLTK、diff、Levenshtein距离...
- linux tcpdump 抓包
- pycharm 配置引用 docker 中的环境