`
java-mans
  • 浏览: 11408797 次
文章分类
社区版块
存档分类
最新评论

Hdu 3123 (0! + 1! + 2! + 3! + 4! + ... + n!)%m

 
阅读更多

Hdu 3123

Output the answer of (0! + 1! + 2! + 3! + 4! + ... + n!)%m.

Constrains
0 < T <= 20
0 <= n < 10^100 (without leading zero)
0 < m < 1000000

提示: n!对于n大于m的时候 n!%m=0 因为n的阶乘包括m

#include<stdio.h>

#include<string.h>

int main()

{

int i,j,n,m,cas,t;

__int64 mid,sum;

char s[1000];

scanf("%d",&cas);

while(cas--)

{

scanf("%s %d",&s,&m);

if(strlen(s)>=7)

t=m;

else sscanf(s,"%d",&t);

mid=1;

sum=1;

for(i=1;i<=t;i++)

{

mid=(mid*i)%m;

sum=(sum+mid)%m;

}

printf("%I64d\n",sum%m);//这里一定一定要%m 否则会错

}

return 0;

}

分享到:
评论

相关推荐

    code_hdu.rar_ACM_The First_hdu_test case example

    For a positive integer n, let’s denote function f(n,m) as the m-th smallest integer x that x&gt;n and gcd(x,n)=1. For example, f(5,1)=6 and f(5,5)=11. You are given the value of m and (f(n,m)?n)⊕n,...

    HDU1019(2028)解题报告

    6 4 10296 936 1287 792 1 Sample Output 105 10296 题目分析:求n个数的最小公倍数;先利用gcd算法求两个数的最大公约数,再考虑最小公倍数=两数乘积/最大公约数,即可求得最小公倍数。 注意:要考虑到输入的输入...

    HDS9970 HP XP128 SUN 9970V

    HDS9970 HP XP128 SUN 9970V TEL:400-888-6656 8610-51657781 ...(WP463-B×1 & SH281-D×4) *3 2-6 SP 24 5519714-A NAS 2-port CHA ASSY (Short wave 1.25Gbps) (WP467-A×1 & SH281-D×2) 25 5513983-B Serial 4-...

    samele123#HDU_ACM#HDU 1874 畅通工程续1

    题目链接题目意思有n个城镇,编号为0~n-1,m条道路,从一个城镇到另一个城镇有多条路,现在问你从一个城镇到另一个城镇的最短距离是多少。其中要注意的是,城镇之间

    leetcode下载-algorithm-1:力扣、HDU、ZOJ、POJ

    问题转化为:判断整数是否为正整数且二进制中仅存在一位1 (n &gt; 0 && (n & (n - 1)) == 0) 链表节点交换 修改next指针的值进行节点的交换 修改val字段的值 等价节点交换 练习: leetcode: 24. Swap Nodes in Pairs ...

    博弈论

    最近在刷挑战,做了博弈...由特殊到一般,我们可以将这个公式推广:当m&gt;1时,先手的必胜态:n%(m+1)!=0。 附上一道模板题:hdu1846 #include #include typedef long long ll; using namespace std; int C; int n, m; i

    java 在线考试系统

    MF000385 : 2k4h9e MF000386 : yyp8kq MF000387 : hf386t MF000388 : ec61gv MF000389 : qrd6dz MF000390 : b75hox MF000391 : z3x5v6 MF000392 : v1dkp9 MF000393 : r3udol MF000394 : 9afvx7 MF000395 : et4dpi MF...

    HDU-1269(Tarjan模板-求强连通分量)

     求一个有向图n个点 m 条边,是否是强连通分量,如果是输出Yes, 不是输出No. 数据范围  n &lt; 10000, m &lt; 100000 思路:  Tarjan模板题 补习: AC code: /* Tarjan求有向图的强连通分量, */ #include #...

    HDU 6187 Destroy Walls(并查集)

    使用并查集+贪心:先将已有边的权值从大到小排序,又n个点只需n-1条边,这时再遍历一遍,将有边的两点合并为一个队伍,当边的数量达到n-1时退出循环,因为此时已达到最小生成树。 边的权值由大到小排序是因为要将大...

    二分图匹配实例代码及整理

    二分图匹配实例代码及整理 1、匈牙利算法 HDU 1150 #include #include #include using namespace std; int m,n,k;... for(int i=1;... if(vis[i]==0&&mpt[x][i]==1) { vis[i]=1; if(use[i]==-1||hungary(us

    2020暑期专题1-图论1题解1

    2020暑期专题图论一解题报告A-HDU1269题意:n个点,m条有向边,问是否每个点都可相互到达思路:Tarjan求SCC分量是不是只有一个参考代码:#inc

    二分图题解1

    B HDU 5093 Battle ships题意给出一个n行m列的图,*代表海域,o代表冰水,#代表冰山,要想在海域中放置船,保证船与船之间不能相互看到,之间

Global site tag (gtag.js) - Google Analytics