ZSCOJ-1133(又見素數)

來源:互聯網
上載者:User

又見素數

Time Limit:2000MS  Memory Limit:65536K
Total Submit:200 Accepted:8

Description

給定一個正整數n(n <= 10000000),求n(包含)以內素數的個數。

Input

第一行為一個整數t(t <= 1000),表示測試資料的組數。
接下來有t行,每行一個整數n。

Output

對於每個n,求n以內素數的個數。

Sample Input

2510

 

Sample Output

34

 

Source

#include <iostream><br />using namespace std;<br />const int N = 10000001;<br />bool prime[N];<br />int sum[N]={0,0,1};<br />int main()<br />{<br />double a1,a2;<br />int t,n,num=1,i,j;<br />memset(prime, 0, sizeof(prime));<br />memset(sum, 0, sizeof(sum));<br />for(i=3; i<N; i+=2)<br />{<br />if(prime[i] == 0)<br />{<br />for(j=i+i; j<N; j+=i)<br />prime[j] = 1;<br />}<br />}<br />for(i=3; i<=N; i+=2)<br />{<br />if(prime[i] == 0)<br />{<br />num++;<br />sum[i]=num;<br />}<br />}<br />cin>>t;<br />while(t--)<br />{<br />cin>>n;<br />if(n<2)<br />cout<<sum[n];<br />else<br />{<br />if(sum[n]==0)<br />{<br />while(sum[n]==0)<br />{<br />n--;<br />}<br />}<br />cout<<sum[n]<<endl;<br />}<br />}<br />return 0;<br />}<br />

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.