zay大爷的膜你题 D2T1 江城唱晚
二更——
因为这篇题解在zay讲之前就写完了,所以我就没写前面的骗分做法,取而代之的是对于正解的一些补充
这一次网易云爆炸了。。。。所以我决定后面的都用QQ(后续的题解证明我真香了)
下面是题面



这道题是一道傻逼题 数学题,按照zay的说法,这种题目在数据范围比较小的情况下可以用dp,数据比较大的话就得用组合数学等方法纸面上推了
我们仔细看一看,首先有m朵花的话,我们就有m!种排列方式(也就是m的全排列),然后我们假设已经把花的顺序排好了
我们这一步要做的事情就是在剩下的n-m+1个空中选择m个插到m朵花中去,也就是插空算法,至于在算n-m等数组要不要+1的时候,最好还是手推再加上实践,这样能保证算出来的数是正确的
所以最后的答案就是A(m,m)*C(n-m+1,m)
本来以为按A和C的算法直接写上就没事的,但是我们忽略了一个问题,直接算阶乘太大,在模意义下算除法还得求逆元,这就意味着我们得化简,把整个式子写出来然后化简得到
(n-m+1)! / (n-2m+1)!
然后直接从n-2m+2开始循环就可以啦
这是代码
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
long long type, n, m, p, ans = ;
int main()
{
freopen("ilove.in","r",stdin);
freopen("ilove.out","w",stdout);
scanf("%lld%lld%lld%lld", &type, &n, &m, &p);
if(type == ){
printf("");
return ;
}
if(n < m*-){
printf("");
return ;
}
for (int i = n - *m + ; i <= n - m + ; ++i){
ans = ans * i % p;
}
printf("%lld", ans % p);
return ;
}
对了,还有一个事,虽然我们对这个东西取模,但是还是很容易溢出int,所以在输出等时候,我们最好是开一个long long
最后送上一句话
十年OI一场空,不开long long见祖宗
zay大爷的膜你题 D2T1 江城唱晚的更多相关文章
- zay大爷的膜你题 D2T2——不老梦(AK梦)
还是万年不变的外链 这个题.....是最难的....但是不知道为啥扶苏神仙讲完了之后我竟然听懂了.... 所以这个题我要好好写一写 首先我们看一看每一个测试点,来一点点得分 第一个测试点n = 1,直 ...
- 【6.24校内test】T1 江城唱晚
[题目背景] 墙角那株海棠,是你种下的思念. 生死不能忘,高烛照容颜. 一曲江城唱晚,重忆当年坐灯前, 青衫中绣着你留下的线. ——银临<江城唱晚> [问题描述] 扶苏是个喜欢一边听古风歌 ...
- 模拟赛DAY 2 T1江城唱晚
[题目背景] 墙角那株海棠,是你种下的思念. 生死不能忘,高烛照容颜. 一曲江城唱晚,重忆当年坐灯前, 青衫中绣着你留下的线. ——银临<江城唱晚> [问题描述] 扶苏是个喜欢一边听古风歌 ...
- 6.25考试整理:江城唱晚&&不老梦&&棠梨煎雪——题解
按照旧例,先安利一下主要作者:一扶苏一 以及扶苏一直挂念的——银临姐姐:银临_百度百科 (滑稽) 好哒,现在步入正题: 先看第一题: 题解: 在NOIP范围内,看到“求方案数”,就说明这个题是一个计数 ...
- NIOP 膜你题
NOIp膜你题 Day1 duliu 出题人:ZAY 1.大美江湖(mzq.cpp/c) [题目背景] 细雪飘落长街,枫叶红透又一年不只为故友流连,其实我也恋长安听门外足音慢,依稀见旧时容颜 ...
- NOIP 膜你题 DAY2
NOIp膜你题 Day2 duliu 出题人:ZAY 题解 这就是一道组合数问题鸭!!! 可是泥为什么没有推出式子!! 首先我们知道的是 m 盆花都要摆上,然后他们的顺序不定(主人公忘记 ...
- zay大爷的神仙题目 D1T3-膜你抄
依旧是外链 锦鲤抄 [题目背景] 你在尘世中辗转了千百年 却只让我看你最后一眼 火光描摹容颜燃尽了时间 别留我一人,孑然一身 凋零在梦境里面. ——银临&云の泣<锦鲤抄> [问题描 ...
- zay大爷的神仙题目 D1T2-腐草为萤
题面如下 依照旧例放外链 [题目背景] 纤弱的淤泥中妖冶颓废在季夏第三月最幼嫩的新叶连凋零都不屑何必生离死别——银临<腐草为萤> [问题描述] 扶苏给了你一棵树,这棵树上长满了幼嫩的新叶, ...
- zay大爷的神仙题目 D1T1-大美江湖
在前几天的时候,千古神犇zay(吊打zhx那个)出了一套神仙题目,所以我得来分析分析QWQ 先补个网易云链接QWQ 毕竟是T1嘛,还算是比较简单的,那道题,读完题目就发现是个中等模拟(猪国杀算大模拟的 ...
随机推荐
- $.ajax与$.post、$.get的一点区别
后台代码: [HttpPost] public string DoLogin(string username,string password) { return "success" ...
- AssetDatabase文档翻译
AssetDatabase是一个能获取工程资源的API,它提供一些方法比如:查找.加载.创建.删除和修改.Unity需要了解工程文件夹里的所有改变,假如想要获取或修改资源文件,就使用 AssetDat ...
- VS2019+ASP.NETCore+图表
原帖学习踩坑:https://www.cnblogs.com/fzqm-lwz/p/9704973.html,主要根据大佬原帖内容,实现尝试,进行一些修改: 实现方式一:通过标记帮助程序将JS代码传到 ...
- hdu 5409 CRB and Graph(边双联通分量)
题意: 给一个图一些边,保证图连通 问对于每条边,如果去除该边后使得图中一些点不连通.设这些点(u,v),要求使u尽量小,v尽量大,输出这样的(u,v).否则输出0 0. #include <b ...
- JSP | 基础 | 两种方式循环输出
用循环连续输出三个你好,字体从小变大 第一种: <body> <%! //通过表达式方式调用实现 String HelloJSP1(){ String str = "&qu ...
- Jenkins持续集成多任务之MultiJob
项目实践中,我们可能需要在多个任务发布成功后在执行某个任务,这里就需要用到MultiJob这个插件. 案例场景:有3个任务:A.B.C,其中C任务需要等A和B执行成功后才会执行,那么就要先执行A和B, ...
- 二分搜索 Codeforces Round #299 (Div. 2) C. Tavas and Karafs
题目传送门 /* 题意:给定一个数列,求最大的r使得[l,r]的数字能在t次全变为0,每一次可以在m的长度内减1 二分搜索:搜索r,求出sum <= t * m的最大的r 详细解释:http:/ ...
- java 反向工具类
1.ReflectUtil.java package com.example.scansell; import android.util.Log; import java.lang.reflect.C ...
- Problem D: 勤奋的涟漪2 dp + 求导
http://www.gdutcode.sinaapp.com/problem.php?cid=1049&pid=3 dp[i][state]表示处理了前i个,然后当前状态是state的时候的 ...
- 高阶组件(Higher-Order Components)
有时候人们很喜欢造一些名字很吓人的名词,让人一听这个名词就觉得自己不可能学会,从而让人望而却步.但是其实这些名词背后所代表的东西其实很简单. 我不能说高阶组件就是这么一个东西.但是它是一个概念上很简单 ...