题目描述
输入 n 个不大于 的正整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。
输入格式
第一行输入一个正整数 n,表示整数个数。
第二行输入 n 个正整数 ,以空格隔开。
输出格式
输出一行,依次输出 中剩余的质数,以空格隔开。
输入 输出
输入 #1
5
3 4 5 6 7
输入 #1
3 5 7
说明/提示
数据保证,1≤ n ≤100,1≤ ≤ 。
Rode:
#include<bits/stdc++.h>
using namespace std;
queue<int> prime;
int juege(int n)
{
bool flag = true;
for(int i = 2; i <= sqrt(n); i++)
{
if(n % i == 0)
{
flag = false;
break;
}
}
if(flag && n > 1)
{
prime.push(n);
}
else
{
return 0;
}
}
int main()
{
int n, m;
scanf("%d", &n);
for(int i = 0; i < n; i++)
{
cin >> m;
juege(m);
}
while(!prime.empty())
{
cout << prime.front() << " ";
prime.pop();
}
return 0;
}
本题来自于洛谷题库