#P14002. 质数存储

质数存储

题目描述

设计 C++\verb|C++| 函数实现将 1n1~n 的所有素数(质数)存储到 vector\verb|vector| 中,并遍历输出 vector\verb|vector| 的所有元素。

设计一个 C++\verb|C++| 函数,函数名为 foo\verb|foo|,参数为 int n\verb|int n|,返回值类型是 vector<int>\verb|vector<int>|,函数返回的是 1n1~n的所有素数(质数)的结果(将区间内的素数依次存储在 vector\verb|vector| 中)。

设计一个 C++\verb|C++| 函数,函数名为 print\verb|print|,参数为 vector<int> v\verb|vector<int> v|,在函数体中遍历输出 v\verb|v| 的所有元素,元素间用一个空格隔开。

输入格式

11 个正整数 nn

输出格式

依次输出 1n1~n 的所有素数,整数间用一个空格隔开。

输入输出样例

50
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47

说明/提示

👀️ 本题需要你设计两个 C++\verb|C++| 函数来解决问题,提交代码模板如下:

#include<iostream>
#include<vector>
using namespace std;

//函数参数n与题目描述一致,返回值是题目要求的结果(函数头必须和模板一致)
vector<int> foo(int n) {
    //在函数中实现题目要求的效果
	vector<int> ans;
    //将 1~n 的所有素数(质数)存储在vector<int>变量ans中,作为函数的返回值

	return ans;
}

//遍历输出vector<int>参数v的所有元素,函数头必须和模板一致
void print(vector<int> &v){
	//在函数中实现题目要求的效果

}

定义了这两个函数,在主函数中调用它就能解决问题,参考代码如下:

//----------------------------------------------------------------------------
//!!!本题要提交的代码从这里开始!!!
#include<iostream>
#include<vector>
using namespace std;

//函数参数n与题目描述一致,返回值是题目要求的结果(函数头必须和模板一致)
vector<int> foo(int n) {
    //在函数中实现题目要求的效果
	vector<int> ans;
    //将 1~n 的所有素数(质数)存储在vector<int>变量ans中,作为函数的返回值

	return ans;
}

//遍历输出vector<int>参数v的所有元素,函数头必须和模板一致
void print(vector<int> &v){
	//在函数中实现题目要求的效果

}

//!!!本题要提交的代码到这里结束!!!
//----------------------------------------------------------------------------
#include<iostream>
int main(){
    int n;
    cin>>n;
    vector<int> ve = foo(n);
    print(ve);
	cout<<endl;
    return 0;
}

需要特别注意的是,本题提交的代码是定义函数的部分,不能提交完整的程序哦!


👀️ 对于100%100\%的数据,1n1000001 \leq n \leq 100000