HDU 2973 YAPTCHA(威爾遜定理)
YAPTCHA
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 930 Accepted Submission(s): 491
Problem Description
The math department has been having problems lately. 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.
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.
Input
The first line contains the number of queries t (t <= 10^6). Each query consist of one natural number n (1 <= n <= 10^6).
Output
For each n given in the input output the value of Sn.
Sample Input
13
1
2
3
4
5
6
7
8
9
10
100
1000
10000
Sample Output
0
1
1
2
2
2
2
3
3
4
28
207
1609
Source
題意:
給了你一個公式,讓你求這個公式。
POINT:
利用威爾遜定理:
若3k+7為質數,就是1,其他情況則是0。
實求x屬於(1,n)時3*x+7中有幾個質數。
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stack>
#include <algorithm>
#include <math.h>
using namespace std;
#define ll long long
//int a[1000000];
int num=0;
int f[3000000+10];
int ans[1000000];
void init()
{
memset(f,1,sizeof f);
// a[++num]=2;
for(int i=4;i<=3000007;i+=2) f[i]=0;
for(int i=3;i<=3000007;i++)
{
if(f[i])
{
// a[++num]=i;
for(int j=i*3;j<=3000007;j=j+i*2)
{
f[j]=0;
}
}
}
ans[0]=0;
for(int i=1;i<=1e6;i++)
{
if(f[i*3+7])
{
ans[i]=ans[i-1]+1;
}
else
ans[i]=ans[i-1];
}
// printf("%d",num);
}
int main()
{
init();
int T;
scanf("%d",&T);
while(T--)
{
int n;
scanf("%d",&n);
printf("%d\n",ans[n]);
}
}
相關文章
- CF1957E 做題小計 : 威爾遜定理
- 威爾遜得分 Wilson Score 排序演算法排序演算法
- 基於使用者投票的排名演算法(五):威爾遜區間演算法
- 羅爾(Rolle)中值定理
- HDU 4704 Sum (隔板原理 + 費馬小定理)
- BZOJ2973 : 石頭遊戲遊戲
- HDU3944 DP? (LUCAS定理+階乘預處理)
- hdu Yet another end of the world(擴充套件歐幾里得定理推論)套件
- HDU 4349 Xiao Ming's Hope (Lucas定理的應用)
- HDU1788Chinese remainder theorem again(中國剩餘定理 簡單)REMAI
- HDU 1452 Happy 2004(唯一分解定理)APP
- 2024_5_29 狄爾沃斯定理(偏序集)
- HDU 4549 M斐波那契數列(矩陣快速冪+費馬小定理)矩陣
- 蒂姆.威爾茨:處境尷尬的 DooM 元老OOM
- 華為雲 API 影像識別 Image 的趣味性—AI 識別邁克爾·傑克遜APIAI
- HDU 4549M斐波那契數列(矩陣快速冪+費馬小定理)矩陣
- X問題(中國剩餘定理+不互質版應用)hdu1573
- 矩陣樹定理 BEST 定理矩陣
- 盧卡斯定理(Lucas定理)
- HDU 5973-Game of Taking Stones(威佐夫博弈-JAVA BigDecimal)GAMJavaDecimal
- 矩陣樹定理與BEST定理矩陣
- Bell(hdu4767+矩陣+中國剩餘定理+bell數+Stirling數+歐幾里德)矩陣
- 威爾人臉識別解決方案成功落地中石化
- 威爾士(Wealth)質押挖礦系統開發IDO
- Ofcom:2023年威爾士媒體報告
- 尤拉定理
- 費馬定理
- Coppersmith定理MIT
- 主定理
- 用Rolle中值定理證明Lagrange中值定理
- 奈奎斯特定理與夏農定理
- 威爾士Wealth質押挖礦系統開發功能分析
- 威爾士質押分紅挖礦系統及開發方案
- Wealth威爾士智慧合約挖礦系統開發技術
- 威爾森:2017年新能源車增長動力分析
- 隆重推薦--1947年羅斯威爾事件-外星人訪談事件
- BEST 定理與矩陣樹定理的證明矩陣
- 介值定理