HDU 5391 Zball in Tina Town 威尔逊定理
2016-05-17 10:02
337 查看
题意:求Y=(n-1)!%n的值。
想法:威尔逊定理:当且仅当p为素数时:( p -1 )! ≡ -1 ( mod p )
显然当n为素数时,Y=-1%n=n-1。
当n不为素数时,Y:当n=4时,Y=2;当n!=4时,Y=0;
#include<stdio.h>
#include<string.h>
bool noprime(int k)
{
for(int i=2;i*i<=k;i++)
{
if(k%i==0) return 1;
}
return 0;
}
int main()
{
int n;
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
if(n==4)
{
puts("2");
continue;
}
if(noprime(n)) printf("0\n");
else printf("%d\n",n-1);
}
return 0;
}
想法:威尔逊定理:当且仅当p为素数时:( p -1 )! ≡ -1 ( mod p )
显然当n为素数时,Y=-1%n=n-1。
当n不为素数时,Y:当n=4时,Y=2;当n!=4时,Y=0;
#include<stdio.h>
#include<string.h>
bool noprime(int k)
{
for(int i=2;i*i<=k;i++)
{
if(k%i==0) return 1;
}
return 0;
}
int main()
{
int n;
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
if(n==4)
{
puts("2");
continue;
}
if(noprime(n)) printf("0\n");
else printf("%d\n",n-1);
}
return 0;
}
相关文章推荐
- 在ASP.NET 2.0中操作数据之五十五:编辑和删除现有的二进制数据
- Java-JVM的基本结构
- CentOS6.5添加rbd模块
- Unity3D 鼠标以及触屏移动、缩放控制器(相机)
- Java虚拟机高耗内存的一种考虑
- RTEMS 最新基于ubuntu和RSB编译环境的安装配置
- ELK日志收集系统搭建
- Centos配置国内yum源
- docker控制机制------namespace命名空间
- Hibernate 缓存机制
- CSS学习之Layouts方法float - CSS: The Missing Manual
- solrj使用
- 103. Binary Tree Zigzag Level Order Traversal
- vc listctr失去焦点,仍然高亮
- uva 1597 Searching the Web
- 关于error:Cannot assign to 'self' outside of a method in the init family
- 从cmd中进入MySQL的命令界面
- shell命令-sed
- android帧动画
- 短信接口(创蓝VIP接口文件(2016新版))操作方法之一