T^T的叛乱计划

TimeLimit:3000MS  MemoryLimit:64MB
64-bit integer IO format:%lld
已解决 | 点击收藏
Problem Description

话说FJUT_ACM在Home_Z的领导下,日益壮大,在整个FJUT也有了不小的名声。邪恶的T^T不甘受制于人,启动了一个秘密计划,要从Home_Z的手中发动暴乱,从而夺取管理权。

T^T在组织内秘密串通了n个人,并制作了n个绝密令牌,要将n个令牌分给n个人。

为了方便管理,每个令牌上都写了一个数字k,并且每个令牌上的数字互不相同。

每个人在FJUT_ACM内有一个工号z,但是由于各种层级关系混乱,每个人的工号并不是互不相同的。

这就很头疼了。。不能建立一种一一对应的关系。于是T^T想在分发号码牌的时候,必须保证每个人的工号 大于或等于 令牌上的数字。

那么请计算这样分发令牌的话有多少种互不相同的方法。(只要有任意一个人拿到不一样的令牌即为不同的方法)

Input

第一行输入一个T表示测试数据的组数

每组数据第一行是一个n(1<=n<=105)

接下来一行有n个数字表示第i个令牌上的数字ki。

下一行有n个数字表示第i个召集的成员的工号zi。

(1<=ki,zi<=1e9)

Output

每个测试样例先输出"Case #x: A"。x表示当前是第几个测试数据。A表示答案。由于答案会很大,请输出A%(109+7)的结果。

SampleInput
3
5
1 2 3 4 5
1 2 3 4 5
2
1 3
2 2
3
2 3 4
6 3 5

SampleOutput
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的叛乱计划(组合数学)相关推荐

  1. 循环相乘取整法C语言,华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...

    题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...

  2. All Of ACM

    数据结构和算法专栏,我会什么写什么  = = 不定时更新 一.数据结构 树状数组详解 线段树详解 二.算法 KMP算法 三.板子 我的代码模板 大整数模板 四.题解报告 几道STL题目(FJUT - ...

  3. 关于ACM,关于CSU

    原文地址:http://tieba.baidu.com/p/2432943599 前言: 即将进入研二,ACM的事情也渐渐远去,记忆终将模糊,但那段奋斗永远让人热血沸腾.开个贴讲讲ACM与中南的故事, ...

  4. 北邮oj题库刷题计划(更新ing)

    北邮oj题库刷题计划(更新ing) 83. A + B Problem 84 Single Number 85. Three Points On A Line 120 日期 121 最值问题 122 ...

  5. LJJ王国的致富修路计划 sdut oj

    LJJ王国的致富修路计划 Problem Description 众说周知LJJ王国有着奇异的结构,因为LJJ国王喜欢素数,所以王国里的路的结构都和素数有关.现在LJJ国王又双叒叕修路了.现有n个要连 ...

  6. OJ每日一练——津津的储蓄计划

    问题描述: 津津的零花钱一直都是自己管理.每个月的月初妈妈给津津300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那 ...

  7. sdut oj 3474 汤圆の拯救计划

    汤圆の拯救计划 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 又到了汤圆星球一年一度 ...

  8. CSU OJ:1427 谭松松的旅游计划(LCA)

    谭松松的旅游计划 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit  ...

  9. BZOJ 2135 刷题计划(贪心,求导,二分)【BZOJ 修复工程】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/2135 是 hydro 的 BZOJ ...

最新文章

  1. 登陆窗体与主窗体的跳转 C# (转载自网络)
  2. delegate委托
  3. 知识图谱学习小组学习大纲
  4. iOS UIModalPresentationFormSheet风格下的键盘隐藏
  5. Construct Maximum Binary Tree
  6. 跑了 13 种编程语言的 Hello World,可视化后有了新发现!
  7. 系统调用跟我学(4)
  8. 计算机网络-自顶向下方法笔记-滑动窗口协议
  9. WireGuard 教程:使用 DNS-SD 进行 NAT-to-NAT 穿透
  10. [c++]小数处理ceil, floor, round
  11. 热门的XDR到底是一类什么样安全产品?
  12. 每日一练 — 2021.12.30
  13. 【直击DTCC】浪潮霍俊路详解数据库集群锁机制管理
  14. 打印机有重影问题解决方案
  15. 利用CodeMirror构建在线IDE随记
  16. Android OnDeviceAppPrediction 优化
  17. 常见ant命令及其用法
  18. RTL-8201以太网芯片外围电路
  19. 2022-2028全球与中国钇钡铜氧化物超导体(YBCO)市场现状及未来发展趋势
  20. 无线充电比有线充电更慢吗?

热门文章

  1. 在 python中每个模块用什么来实现_Python代码模块热更新机制实现(reload)
  2. react中使用create-react-app创建项目执行函数两次
  3. 细节定成败!汕头网络推广提醒你在做网站内容收录时需注意什么?
  4. 如何更科学的进行SEO优化?保持排名稳定
  5. 雷卷 java,阿里巴巴资深技术专家雷卷:值得开发者关注的 Java 8 后时代的语言特性...
  6. 判读一个对象不为空_LabVIEW面向对象编程_初窥门径(3):开发实践
  7. Could not find method google() for arguments [] on repository container.
  8. Finding Similar Items 文本相似度计算的算法——机器学习、词向量空间cosine、NLTK、diff、Levenshtein距离...
  9. linux tcpdump 抓包
  10. pycharm 配置引用 docker 中的环境