喵喵的神∙数
Time Limit: 1 Sec Memory Limit: 128 MB

Description

喵喵对组合数比較感兴趣,而且对计算组合数很在行。

同一时候为了追求有后宫的素养的生活,喵喵每天都要研究

质数。

我们先来复习一下什么叫做组合数。对于正整数P、T  

         
                                             

然后我们再来复习一下什么叫质数。质数就是素数,假设说正整数N的约数仅仅有1和它本身,N就是质数;另外。

1不是质数。

今天,喵喵想要知道



Input

输入第一行是一个整数N(N<=1000)。

接下来N行,每行包含一个正整数T和一个质数P(1<=P<=T<231)。

Output

包含N行,依据输入的顺序。每一行为一个整数:

Sample Input

2

3 2

10 3

Sample Output

1

0

HINT

Source

CPC3

解题思路:

这题是纯数学题,唉,数学就是硬伤啊!

搞了半天。没有结果。果断百度了一下,结果搜到了不明觉历的Lucas定理,据说是专门解决C(n, m)%p的,当中p是质数。

Lucas定理叙述例如以下:

        数论Lucas定理是用来求 c(n,m) mod p的值,p是素数(从n取m组合。模上p)。
描写叙述为:
Lucas(n,m,p)=cm(n%p,m%p)* Lucas(n/p,m/p,p)
Lucas(x,0,p)=1;
本题中,让求的是,所以。n = p, 代入得 Lucas(n,m,p)  =   cm(n%p, m%p)* Lucas(n/p,
m/p, p)
                                                                                                             =    cm(n%p, p%p)* Lucas(n/p,
p/p, p)
                                                                                                             =
   cm(n%p, 0)* Lucas(n/p, 1, p)
 
                                                                                                           =    1 * Lucas(n/p, 1, p)
 
                                                                                                           =    C(n/p, 1) % p 
=    C(n/p, 1) % p 
=    ( n/p ) % p





AC代码:
#include <iostream>
#include <cstdio>
using namespace std; int main(){
freopen("in.txt", "r", stdin);
int n, t, p;
cin >> n;
while(n--){
cin >> t >> p;
cout << (t / p) % p << endl;
}
return 0;
}


CPC23-4-K. 喵喵的神数 (数论 Lucas定理)的更多相关文章

  1. 51Nod 机器人走方格 V3 —— 卡特兰数、Lucas定理

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1120 题解: 1.看到这种题,马上就想到了卡特兰数.但卡特兰数 ...

  2. BZOJ 2754([SCOI2012]喵喵叫的星球-统计序列的后缀阵列中子序列出现次数)

    2754: [SCOI2012]喵喵叫的星球 Time Limit: 20 Sec  Memory Limit: 128 MB Submit: 805  Solved: 380 [id=2754&qu ...

  3. HTML5打造的炫酷本地音乐播放器-喵喵Player

    将之前捣腾的音乐频谱效果加上一个播放列表就成了现在的喵喵播放器(Meow meow Player,额知道这名字很二很装萌~),全HTML5打造的网页程序,可本地运行也可以挂服务器上用. 在线Demo及 ...

  4. 51nod 1120 机器人走方格 V3 卡特兰数 lucas定理

    N * N的方格,从左上到右下画一条线.一个机器人从左上走到右下,只能向右或向下走.并要求只能在这条线的上面或下面走,不能穿越这条线,有多少种不同的走法?由于方法数量可能很大,只需要输出Mod 100 ...

  5. poj 1430 Binary Stirling Number 求斯特林数奇偶性 数形结合| 斯特林数奇偶性与组合数的关系+lucas定理 好题

    题目大意 求子集斯特林数\(\left\{\begin{matrix}n\\m\end{matrix}\right\}\%2\) 方法1 数形结合 推荐一篇超棒的博客by Sdchr 就是根据斯特林的 ...

  6. CPC23-4 K.喵喵的神·数

    题意:给出整数T,P,求c(T,P) mod P. 解法:用卢卡斯定理. 卢卡斯定理:解决c(n,m) mod p问题.Lucas(n,m,p)=c(n%p,m%p)*Lucas(n/p,m/p,p) ...

  7. uestc 1725 吴神数

    // 筛选法// 先求出 sqrt(1<<31)内的素数// 然后筛选出符合要求的数// 详情见代码注释// #pragma comment(linker, "/STACK:10 ...

  8. 分治与递归-找k个临近中位数的数

    问题描述:给定由n个互不相同的数组成的集合S以及正整数k≤n,试设计一个O(n)时间算法找出S中最接近S的中位数的k个数. 算法描述: 用线性时间选择实现的算法找到中位数 S’=除去中位数外的S S& ...

  9. 2016-2017学年第三次测试赛 习题E 林喵喵算术

    时间限制: 1 Sec  内存限制: 128 MB 提交: 70  解决: 25 提交统计讨论版 题目描述 给你两个八进制数,你需要在八进制计数法的情况下计算a-b. 如果结果为负数,你应该使用负号代 ...

随机推荐

  1. (转)cygwin个性化配置

    http://blog.cong.co/cygwin.html#%E5%AE%9A%E4%B9%89%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F配置 cygwin 中的服务 ...

  2. kubernetes节点安装配置

    #环境安装,要与控制节点一致Centos 7 Linux release 7.3.1611网络: 互通配置主机名设置各个服务器的主机名hosts#查找kubernetes支持的docker版本Kube ...

  3. 使用dom4j工具包对xml文件解析

    xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http: ...

  4. vagrant virtualbox VM inaccessible解决办法

    vagrant无法访问的提示:Please open VirtualBox and clear out your inaccessible virtual machines or find a way ...

  5. [BZOJ1069][SCOI2007]最大土地面积 凸包+旋转卡壳

    1069: [SCOI2007]最大土地面积 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 3669  Solved: 1451[Submit][Sta ...

  6. RANSAC中迭代次数的计算

    假设 $w=\frac{内点个数 }{所有点的个数}$. 则 $p_{0}=w^n$表示采样的$n$个点全为内点的概率(可重复) 则至少有一个为外点的概率$p_{1}=1-p_{0}$ 则重复$K$次 ...

  7. IDEA 提交项目至Git与获取Git项目

    1.IDEA提交项目至git 注:保证已安装Git分布式管理系统,没有自行百度安装git 1)在IDEA中配置Git与GitHub a)Git: File-->Settings --> V ...

  8. HDU 2639 Bone Collector II【01背包 + 第K大价值】

    The title of this problem is familiar,isn't it?yeah,if you had took part in the "Rookie Cup&quo ...

  9. java File和Byte[]数组 相互转换

    public class Test { public static void main(String[] args){ String filePath = "E:\\softoon\\wor ...

  10. sqlserver 巧用REVERSE和SUBSTRING实现lastindexof

    原文:sqlserver 巧用REVERSE和SUBSTRING实现lastindexof select REVERSE(SUBSTRING(REVERSE(testFixtureNumber),0, ...