hdu2973-YAPTCHA-(欧拉筛+威尔逊定理+前缀和)
YAPTCHA
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1490 Accepted Submission(s):
811
Due to immense amount of unsolicited automated programs which were crawling
across their pages, they decided to put
Yet-Another-Public-Turing-Test-to-Tell-Computers-and-Humans-Apart on their
webpages. In short, to get access to their scientific papers, one have to prove
yourself eligible and worthy, i.e. solve a mathematic
riddle.
However, the test turned out difficult for some math PhD
students and even for some professors. Therefore, the math department wants to
write a helper program which solves this task (it is not irrational, as they are
going to make money on selling the program).
The task that is presented
to anyone visiting the start page of the math department is as follows: given a
natural n, compute
where [x] denotes the
largest integer not greater than x.
<= 10^6). Each query consist of one natural number n (1 <= n <=
10^6).
Sn.
1
2
3
4
5
6
7
8
9
10
100
1000
10000
1
1
2
2
2
2
3
3
4
28
207
1609
#include <iostream>
#include<stdio.h>
#include <algorithm>
#include<string.h>
#include<cstring>
#include<math.h>
#define inf 0x3f3f3f3f
#define ll long long
using namespace std;
const int maxx=;
int prime[];
bool vis[];
int ans[];
int cnt; void init()
{
cnt=;
memset(vis,true,sizeof(vis));
vis[]=vis[]=false;
for(int i=;i<=maxx;i++)//欧拉筛
{
if(vis[i])
prime[cnt++]=i;
for(int j=;j<cnt && prime[j]*i<=maxx;j++)
{
vis[ prime[j]*i ]=false;
if( i%prime[j]== ) break;
}
}
memset(ans,,sizeof(ans));
int p;
for(int k=;k<=;k++)
{
p=*k+;
if(vis[p])
ans[k]=ans[k-]+;
else
ans[k]=ans[k-];
}
} int main()///hdu2973,威尔逊定理+前缀和
{
init();
int t,n;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
printf("%d\n",ans[n]);
}
return ;
}
hdu2973-YAPTCHA-(欧拉筛+威尔逊定理+前缀和)的更多相关文章
- UVA12995 Farey Sequence [欧拉函数,欧拉筛]
洛谷传送门 Farey Sequence (格式太难调,题面就不放了) 分析: 实际上求分数个数就是个幌子,观察可以得到,所求的就是$\sum^n_{i=2}\phi (i)$,所以直接欧拉筛+前缀和 ...
- 【BZOJ 2190】【SDOI 2008】仪仗队 欧拉筛
欧拉筛模板题 #include<cstdio> using namespace std; const int N=40003; int num=0,prime[N],phi[N]; boo ...
- [51NOD1181]质数中的质数(质数筛法)(欧拉筛)
题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1181 思路:欧拉筛出所有素数和一个数的判定,找到大于n的最小质 ...
- 素数筛&&欧拉筛
折腾了一晚上很水的数论,整个人都萌萌哒 主要看了欧拉筛和素数筛的O(n)的算法 这个比那个一长串英文名的算法的优势在于没有多次计算一个数,也就是说一个数只筛了一次,主要是在%==0之后跳出实现的,具体 ...
- 欧拉筛,线性筛,洛谷P2158仪仗队
题目 首先我们先把题目分析一下. emmmm,这应该是一个找规律,应该可以打表,然后我们再分析一下图片,发现如果这个点可以被看到,那它的横坐标和纵坐标应该互质,而互质的条件就是它的横坐标和纵坐标的最大 ...
- pku-2909 (欧拉筛)
题意:哥德巴赫猜想.问一个大于2的偶数能被几对素数对相加. 思路:欧拉筛,因为在n<215,在3万多,一个欧拉筛得时间差不多4*104, 那么筛出来的素数有4千多个,那么两两组合直接打表,时间复 ...
- hdu2421-Deciphering Password-(欧拉筛+唯一分解定理+积性函数+立方求和公式)
Deciphering Password Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- POJ-3126.PrimePath(欧拉筛素数打表 + BFS)
给出一篇有关素数线性筛和区间筛的博客,有兴趣的读者可以自取. 本题大意: 给定两个四位的素数,没有前导零,每次变换其中的一位,最终使得两个素数相等,输出最小变换次数.要求变换过程中的数也都是素数. 本 ...
- 欧拉筛(线性筛) & 洛谷 P3383 【模板】线性筛素数
嗯.... 埃氏筛和欧拉筛的思想都是相似的: 如果一个数是素数,那么它的所有倍数都不是素数.... 这里主要介绍一下欧拉筛的思路:(欧拉筛的复杂度大约在O(n)左右... 定义一个prime数组,这个 ...
随机推荐
- linux:ubuntu安装mysql(二)--推荐
1)下载mysql安装包mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz,下载地址:https://dev.mysql.com/downloads/mysql/ 2 ...
- rpm和yum的区别
rpm 只能安装已经下载到本地机器上的rpm 包, yum能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的.
- java多线程的认识
[线程定义] 定义:线程(英语:thread)是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程 ...
- 5种分布式共享session的方法
集群/分布式环境下5种session处理策略 转载 2016年03月16日 08:59:53 标签: session / nginx / 分布式 / 集群 11098 转载自:http://blog. ...
- ubantu 与Windows 资源共享
Linux与Windows共享文件夹之samba的安装与使用(Ubuntu为例) 作者:@gzdaijie本文为作者原创,转载请注明出处:http://www.cnblogs.com/gzdaij ...
- 将浏览器的内容复制到Linux的文件里面
直接使用ctrl +c 复制的内容 用ctr +V贴入Linux系统文件的话,格式是乱的 可以使用EOF的方式 [root@centos7 ~]# cat <<EOF >tttt. ...
- UiAutomator 代码记录 : 遍历桌面
package test_one; import java.lang.*; import java.io.File; import com.android.uiautomator.core.UiDev ...
- (二)apache atlas配置和运行
上一篇文章,我们已经构建出了altas的安装包,所以我们继续使用安装包配置和运行atlas 首先解压atlas压缩包,授予bin目录下的执行权限 1.默认启动atlas cd atlas/bin/ p ...
- FreeMarker内建函数
内建函数 内建函数语法格式: 变量+?+函数名称 获取集合大小 我们通常要得到某个集合的大小,如下图: 我们使用size函数来实现,代码如下: 共 ${goodsList?size} 条记录 转换 ...
- SAP生产机该不该开放Debuger权限(转)
前段时间公司定制系统在调用SAP RFC接口的时候报错了,看错误消息一时半会儿也不知道是哪里参数数据错误,就想着进到SAP系统里面对这个接口做远程Debuger,跟踪一下参数变量的变化,结果发现根本就 ...