文章
5
粉丝
7
获赞
9
访问
1.1k
#include <iostream>
#include <math.h>
using namespace std;
const int maxn=1000150;
int cnt;//统计素数个数
int primes[maxn];//存储素数的数组
int st[maxn];//表示i元素是否是素数 false是素数 true是合数
void getPrime(int n)
{
//初始化
cnt=0;
st[0]=true;
st[1]=true;
for(int i=2; i<=n; i++)
{
if(!st[i])
{
//是素数
primes[cnt++]=i;
}
for(int j=0; primes[j]*i<=n; j++)
{
//筛除素数的倍数-》合数
st[primes[j]*i]=true;
if(i%primes[j]==0)
{
//优化
break;
}
}
}
}
int main()
{
int n;
cin>>n;
for(int i=0; i<n; i++)
{
string str;//输入的字符串
cin>>str;
int num=0;//记录提取出的数字
for(int j=0; j<str.size(); j++)
{
if(str[j]>='0'&& str[j]<='9')
{
num=num*10+(str[j]-'0');...
登录后发布评论
暂无评论,来抢沙发