YAPTCHA(HDU2973)【威尔逊定理】
威尔逊原理。即对于素数p,有(p-1)!=-1( mod p).
首先,将原式变形为[ (3×k+6)! % (3×k+7) + 1] / (3×k+7),所以:
1.3×k+7是素数,结果为1,
2.3×k+7不是素数,则假设(3×k+7)=m1*m2*m3……,可知m1,m2,m3……<=3*k+6,则此时(3×k+6)! % (3×k+7) = 0,所以经过取整,式子的答案为0.
#include<cstdio> using namespace std;
int is_prime[],sum[];
void init(){
for(int i=;i<=;i++)
is_prime[i]=true;
is_prime[]=is_prime[]=false;
for(int i=;i<=;i++){
if(is_prime[i]){
for(int j=*i;j<=;j+=i)
is_prime[j]=false;
}
}
for(int i=;i<=;i++)
sum[i]=sum[i-]+is_prime[*i+];
}
int main(){
int t,n;
init();
scanf("%d",&t);
while(t--){
scanf("%d",&n);
printf("%d\n",sum[n]);
}
return ;
}
YAPTCHA(HDU2973)【威尔逊定理】的更多相关文章
- hdu2973 YAPTCHA【威尔逊定理】
<题目链接> 题目大意: The task that is presented to anyone visiting the start page of the math departme ...
- HDU 2973 YAPTCHA (威尔逊定理)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- HDU - 2973:YAPTCHA (威尔逊定理)
The math department has been having problems lately. Due to immense amount of unsolicited automated ...
- hdu2973-YAPTCHA-(欧拉筛+威尔逊定理+前缀和)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- HDU2973(威尔逊定理)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...
- 威尔逊定理--HDU2973
参考博客 HDU-2973 题目 Problem Description The math department has been having problems lately. Due to imm ...
- hdu 2973"YAPTCHA"(威尔逊定理)
传送门 题意: 给出自然数 n,计算出 Sn 的值,其中 [ x ]表示不大于 x 的最大整数. 题解: 根据威尔逊定理,如果 p 为素数,那么 (p-1)! ≡ -1(mod p),即 (p-1)! ...
- YAPTCHA UVALive - 4382(换元+威尔逊定理)
题意就是叫你求上述那个公式在不同N下的结果. 思路:很显然的将上述式子换下元另p=3k+7则有 Σ[(p-1)!+1/p-[(p-1)!/p]] 接下来用到一个威尔逊定理,如果p为素数则 ( p -1 ...
- YAPTCHA(hdu2973)
YAPTCHA Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- hdu5391 Zball in Tina Town(威尔逊定理)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud Zball in Tina Town Time Limit: 3000/1500 ...
随机推荐
- 生产者和消费者之间的线程通讯wait()
生产者与消费者,采用notify()唤醒 package com.dwz.concurrency.chapter9; /** * 生产者和消费者之间的通信问题 * 执行wait()之后锁被释放 */ ...
- 记一次springboot+mybatis+phoenix在代码集成中的坑
场景: 希望使用phoenix做查询服务,给服务端提供接口 设计: 通过springboot做restful的接口发布,通过mybatis做phoenix的sql处理,因此是springboot+my ...
- Linux设备驱动程序 之 装载和卸载模块
前置说明 本文例子中涉及两个模块hello.ko和world.ko,其中hello导出符号供world使用: insmod 该命令将模块的代码和数据装入内核,然后使用内核的符号表继续模块中任何未解析的 ...
- python中的break continue之用法
Break break跳出循环,并且终止最小封闭循环. Continue continue跳过本次循环,继续执行下一次的循环. 二者区别就是break会终止循环,continue不终止循环.
- http协议格式详解
参考:https://www.jianshu.com/p/8fe93a14754c 一.URI结构 HTTP使用统一资源标识符(URI)来传输数据和建立连接.URL(统一资源定位符)是一种特殊种类的U ...
- Spring事务注解分析
1.使用spring事务注解 2.手写事务注解 1).sql执行器 2).事务注解定义 3).AOP实现事务具体实现(同一个线程中使用同一个连接) 4).应用使用注解前 5).应用使用注解后
- [go]socket编程
socket特性 总是成对出现 是全双工的(同时支持收发)(两个channel绑在一起) 应用程序 - cs模式(客户端开发) - bs模式(web开发) net包api基础 都是客户端主动发数据(c ...
- java中字符串左右补齐【转】
/** * 右左补齐 */ public static String padRight(String src, int len, char ch) { int diff = len - src.len ...
- .net 分布式锁实现
摘要: .net分布式锁,包括redis分布式锁和zookeeper分布式锁的.net实现. 分布式锁在解决分布式环境下的业务一致性是非常有用的. 分布式锁 经常用于在解决分布式环境下的业务一致性和协 ...
- 史上最全最详细JNDI数据源配置说明
转: 史上最全最详细JNDI数据源配置说明 2017年08月05日 17:12:08 万米高空 阅读数 23983 版权声明:本文为博主原创文章,转载请注明出处,尊重劳动成果,谢谢~ https: ...