154.c
来自「平时acm训练时ac的源代码」· C语言 代码 · 共 115 行
C
115 行
/*
154. Factorial
Accepted 83 ms 114 kb
*/
#include <stdio.h>
int main()
{
long Q;
scanf("%ld", &Q);
if (0==Q)
printf("1");
else
{
if (Q>=61035155)
{
if (61035155==(Q%61035156))
{
Q = -1;
}
Q = Q-(Q/61035156);
}
if (Q>=12207030)
{
if (12207030==(Q%12207031))
{
Q = -1;
}
Q = Q-(Q/12207031);
}
if (Q>=2441405)
{
if (2441405==(Q%2441406))
{
Q = -1;
}
Q = Q-(Q/2441406);
}
if (Q>=488280)
{
if (488280==Q%488281)
{
Q = -1;
}
Q = Q-(Q/488281);
}
if (Q>=97655)
{
if (97655==Q%97656)
{
Q = -1;
}
Q = Q-(Q/97656);
}
if (Q>=19530)
{
if (19530==Q%19531)
{
Q = -1;
}
Q = Q-(Q/19531);
}
if (Q>=3905)
{
if (3905==Q%3906)
{
Q = -1;
}
Q = Q-(Q/3906);
}
if (Q>=780)
{
if (780==Q%781)
{
Q = -1;
}
Q = Q-(Q/781);
}
if (Q>=155)
{
if (155==Q%156)
{
Q = -1;
}
Q = Q-(Q/156);
}
if (Q>=30)
{
if (30==Q%31)
{
Q = -1;
}
Q = Q-(Q/31);
}
if (Q>=5)
{
if (5==Q%6)
{
Q = -1;
}
Q = Q-(Q/6);
}
if (Q>0)
{
printf("%ld", Q*5);
}
else
{
printf("No solution");
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?