hdu_5894_hannnnah_j’s Biological Test(打表找规律)
题目链接:hdu_5894_hannnnah_j’s Biological Test
题意:
有n个不同的位置围成一个圈,现在要安排m个人坐,每个人至少的间隔为k,问有多少种安排
题解:
先打表找规律,最后发现答案为n*C(n-m*k-1,n-m*k-m)/m
然后这里求组合要预处理一下,逆元也预处理一下
最后还要特判m为1的情况
#include<cstdio>
typedef long long ll;
const int P=1e9+; const int maxn=1e6+;
long long inv[maxn]={,},a[maxn],b[maxn]; ll pow_mod(ll a, ll b)
{
ll ans = ;
while (b)
{
if (b & )ans = (ans*a) % P;
b >>= , a = (a*a) % P;
}
return ans;
} ll C(ll x,ll y)
{
return b[x]*a[y]%P*a[x-y]%P;
} int main(){
int t;ll n,m,k;
b[]=;
for(int i=;i<maxn;i++)b[i]=b[i-]*i%P;
for(int i=;i<maxn;i++)a[i]=pow_mod(b[i],P-);
for(int i=;i<maxn;i++)inv[i]=inv[P%i]*(P-P/i)%P;
scanf("%d",&t);
while(t--)
{
scanf("%lld%lld%lld",&n,&m,&k);
ll n0=m*(k+);
if(m==)printf("%lld\n",n);
else if(n<n0)printf("0\n");
else printf("%lld\n",(((n*C(n-m*k-,n-m*k-m))%P)*inv[m])%P);
}
}
hdu_5894_hannnnah_j’s Biological Test(打表找规律)的更多相关文章
- hdu 3032 Nim or not Nim? (SG函数博弈+打表找规律)
Nim or not Nim? Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Sub ...
- HDU 5753 Permutation Bo (推导 or 打表找规律)
Permutation Bo 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5753 Description There are two sequen ...
- HDU 4861 Couple doubi (数论 or 打表找规律)
Couple doubi 题目链接: http://acm.hust.edu.cn/vjudge/contest/121334#problem/D Description DouBiXp has a ...
- HDU2149-Good Luck in CET-4 Everybody!(博弈,打表找规律)
Good Luck in CET-4 Everybody! Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ...
- 【ZOJ】3785 What day is that day? ——浅谈KMP在ACM竞赛中的暴力打表找规律中的应用
转载请声明出处:http://www.cnblogs.com/kevince/p/3887827.html ——By Kevince 首先声明一下,这里的规律指的是循环,即找到最小循环周期. 这 ...
- HDU 5795 A Simple Nim(SG打表找规律)
SG打表找规律 HDU 5795 题目连接 #include<iostream> #include<cstdio> #include<cmath> #include ...
- hdu_5795_A Simple Nim(打表找规律的博弈)
题目链接:hdu_5795_A Simple Nim 题意: 有N堆石子,你可以取每堆的1-m个,也可以将这堆石子分成3堆,问你先手输还是赢 题解: 打表找规律可得: sg[0]=0 当x=8k+7时 ...
- hdu_5793_A Boring Question(打表找规律)
题目链接:hdu_5793_A Boring Question 题意: 自己看吧,说不清楚了. 题解: 打表找规律 #include<cstdio> typedef long long l ...
- hdu 3032 Nim or not Nim? (sg函数打表找规律)
题意:有N堆石子,每堆有s[i]个,Alice和Bob两人轮流取石子,可以从一堆中取任意多的石子,也可以把一堆石子分成两小堆 Alice先取,问谁能获胜 思路:首先观察这道题的数据范围 1 ≤ N ...
随机推荐
- angular中的cookie读写
AngularJS中对cookie的操作封装了一个单独的模块,模块名为ngCookies,若想使用需在页面中先引入angular-cookies.js: <script src="js ...
- 如何关闭tomcat的localhost_access_log?
Tomcat每处理一个请求就会在{tomcat_home}/logs/下面生成localhost_access_log,日复一日,服务器上面就产生了很多这样的文件,虽然单个文件不大,但是积少成多,一定 ...
- jQuery基础教程第四版练习答案
第二章 1. $('#selected-plays>li>ul>li').nextAll().addBack().addClass('special'); 2. $('table') ...
- string,stringbuilder和stringbuffer的区别
String.StringBuffer.StringBuilder之间的区别(网上收集) StringBuffer.StringBuilder和String一样,也用来代表字符串.String类是不可 ...
- MVC 之下载 我的实践
Controller 1. public ActionResult DownLoad(string path,string fileName) { return File(new FileStream ...
- wifi 模块
#include"STC12C5A.H" #include <string.h> #include<intrins.h> #define uint unsi ...
- Spark 源码解读 -- 依赖
窄依赖 所谓窄依赖就是说子RDD中的每个分区(partition)只依赖于父RDD中有限个数的partition.在API中解释如下: 窄依赖在代码中有两种具体实现,一种是一对一的依赖:OneToOn ...
- java知识点梳理
网络搜索结果,出处不详,仅供参考 对于刚刚接触Java的人,java基础知识技术点繁多,那么gkstk小编为大家汇总最全java知识点如下,仅供大家参考学习! 1. JVM相关(包括了各个版本的特性) ...
- Java 年月日 日期加减
public static String DATE_YEAR="YEAR";//年 public static String DATE_MONTH="MONTH" ...
- 转:iOS 屏幕适配,autoResizing autoLayout和sizeClass图文详解
1. autoResizing autoresizing是苹果早期的ui布局适配的解决办法,iOS6之前完全可以胜任了,因为苹果手机只有3.5寸的屏幕,在加上手机app很少支持横屏,所以iOS开发者基 ...