ACM常用模板合集 #include<cstdio> const int N = 2000 + 5; const int MOD = (int)1e9 + 7; int comb[N][N];//comb[n][m]就是C(n,m) void init(){ for(int i = 0; i < N; i ++){ comb[i][0] = comb[i][i] = 1; for(int j = 1; j < i; j ++){ comb[i]
-1][j] + comb[i-1][j-1]; comb[i][j] %= MOD; } } } int main(){ init(); } 卢卡斯定理 cin>>n>>m>>p; init(p); cout<<lucas(n+m,m,p)<<endl; } return 0; } 为了快,放了一个数组,限制了P的大小,然后再发一个没有限制的卢卡斯 min = m - 1; printf("%lld\n", lucas(max - 1, min - 1)); } return 0; } ExLucas扩展卢卡斯定理
Lucas用来求C(n,m)%p的值,适用于解决n,m较大,p(一定为素数)小于1e6的情况。
输入输出样例 输入样例#1: 2 1 2 5 2 1 5 输出样例#1: 3 3 卢卡斯定理 $C(n,m)%p=C(n%p,m%p)*C(n/p,m/p)$ 对于这道题来说,p是素数,解逆元的时候用快速幂
点这里 7-5 字符串循环左移 输入一个字符串和一个非负整数N,要求将字符串循环左移N次。 输入格式: 输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。
数码城市有土地出售。待售的土地被划分成若干块,每一块标有一个价格。这里假设每块土地只有两块相邻的土地,除了开头和结尾的两块是只有一块邻居的。每位客户可以购买多块连续相邻的土地。
点这里 7-5 小字辈 (25 分) 本题给定一个庞大家族的家谱,要请你给出最小一辈的名单。
题目背景 这是一道模板题。 题目描述 给定n 求 保证P为prime C表示组合数。 一个测试点内包含多组数据。 输入输出格式 输入格式: 第一行一个整数 ,表示数据组数 第二行开始共T行,每行三个数n m p,意义如上 输出格式: 共T行,每行一个整数表示答案。 Lucas定理这个东西就不细学了。 毕竟就一行代码,辣么好背 输入输出样例 输入样例#1: 2 1 2 5 2 1 5 输出样例#1: 3 3
7-5 堆中的路径 (25 分) 将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。
数码城市有土地出售。待售的土地被划分成若干块,每一块标有一个价格。这里假设每块土地只有两块相邻的土地,除了开头和结尾的两块是只有一块邻居的。每位客户可以购买多块连续相邻的土地。
受新冠疫情影响,当前大家的活动都必须注意保持充分的社交距离,国家实验室的使用也同样受到了严格的限制。假设规定任何一个时间点上,实验室内最多只能有 1 个人,且每个人都必须提前申请实验室的使用,只有申请被批准后才能进入。现给定一批第二天的实验室使用申请,你需要写个程序自动审批,使得能够被批准的申请数量最大化。
受新冠疫情影响,当前大家的活动都必须注意保持充分的社交距离,国家实验室的使用也同样受到了严格的限制。假设规定任何一个时间点上,实验室内最多只能有 1 个人,且每个人都必须提前申请实验室的使用,只有申请被批准后才能进入。现给定一批第二天的实验室使用申请,你需要写个程序自动审批,使得能够被批准的申请数量最大化。
本文链接:https://blog.csdn.net/shiliang97/article/details/102727502 7-5 文件传输 (25 分) 当两台计算机双向连通的时候,文件是可以在两台机器间传输的
子串是一个字符串中连续的一部分,而子列是字符串中保持字符顺序的一个子集,可以连续也可以不连续。例如给定字符串 atpaaabpabtt,pabt是一个子串,而 pat 就是一个子列。
子串是一个字符串中连续的一部分,而子列是字符串中保持字符顺序的一个子集,可以连续也可以不连续。例如给定字符串 atpaaabpabtt,pabt是一个子串,而 pat 就是一个子列。
本文链接:https://blog.csdn.net/shiliang97/article/details/101473181 7-5 对称排序 (25 分) 你供职于由一群丑星作为台柱子的信天翁马戏团
我们此时有一个m行n列的样本矩阵X,此时的X样本矩阵代表有m个样本n个特征。通过前面的关于主成分的学习,此时假设我们已经求出针对X样本矩阵来说前k个主成分,每一个主成分对应的一个单位方向,用W矩阵来表示,此时的W矩阵为k行n列,代表前k个主成分,每一个主成分有n个元素。在上一小节提到主成分分析的本质就是从一组坐标系转移到另外一组新的坐标系的过程,而由于我们原来为n维坐标系,因此转换之后的坐标系也有n个维度,只不过对于转换后的坐标系来说,取出前k个更加重要的方向,因此W是k行n列的矩阵。
本文链接:https://blog.csdn.net/shiliang97/article/details/100634522 7-5 链表合并 (25 分) 给定两个单链表 L1=a1→
7-5 宇宙无敌大招呼 据说所有程序员学习的第一个程序都是在屏幕上输出一句“Hello World”,跟这个世界打个招呼。作为天梯赛中的程序员,你写的程序得高级一点,要能跟任意指定的星球打招呼。
拼题er们觉得戴帽子会令自己看上去很帅,所以他们不管到哪里都会戴着帽子。有一天他们去到一家餐厅,服务员把他们的帽子收集了堆起来保管。当大家要离开的时候,发现帽子被像上图那样摞起来了。于是你的任务就是帮他们排好队,使得每个人都能按顺序顺利取到自己的帽子。