/*************************************************************************
File Name: test.c
Author: cwj
Mail: 1003214597@qq.com
Created Time: Sat 14 Oct 2017 07:45:57 PM CST
************************************************************************/
//普通筛选法
#include<stdio.h>
int prime[100000000];
int vis[100000000];
int main()
{
int primeIndex=0;
freopen("prime.txt","w",stdout);
for (int i = 2; i < 100000000; ++i) {
if(!vis[i])prime[primeIndex++]=i;
for (int j = i*2; j <100000000; j+=i) {
vis[j]=1;
}
}
for (int i = 0; i < primeIndex; ++i) {
printf("%d",prime[i]+" ");
}
return 0;
}
//欧拉线性筛选法
#include<stdio.h>
int prime[100000000],vis[100000000];
int main()
{
freopen("prime.txt","w",stdout);
//线性素数筛
int top=0;
for(int i=2;i<=100000000;i++)
{
if(!vis[i])
prime[top++]=i;
for(int j=0;j<top&&prime[j]*i<=100000000;j++)
{
vis[i*prime[j]]=1;
if(i%prime[j]==0)break;
}
}
for(int i=0;i<top;i++)
printf("%d\n",prime[i]);
}
/*************************************************************************
File Name: C\C++/exercise.cpp
Author: cwj
Mail: 1003214597@qq.com
Created Time: Fri 20 Oct 2017 02:39:30 PM CST
************************************************************************/
#include<iostream>
#include<string>
#include<sstream>
#include<vector>
#include<ctime>
#include<algorithm>
#include<set>
using namespace std;
const int maxn=100+10;
struct Point{
int x,y;
Point(int x=0,int y=0):x(x),y(y){}
};
Point operator +(const Point& A,const Point& B){
return Point(A.x+B.x,A.y+B.y);
}
ostream& operator << (ostream &out,const Point &p){
out<<"("<<p.x<<","<<p.y<<")";
return out;
}
template<typename T>
T sum(T*begin,T*end){
T ans=0;
for (T*p=begin;p!=end;p++) {
ans=ans+*p;
}
return ans;
}
int A[maxn];
int temp[10000000];
int main(int argc, char *argv[])
{
srand(time(NULL));
vector<int> x;
x.push_back(20);
for(vector<int>::iterator i = x.begin(); i != x.end(); ++i){
printf("%d \n",x.size());
}
set <int> seta;
for (int i = 0; i < 100; ++i) {
seta.insert(rand());
}
int index=0;
for (set<int>::iterator it=seta.begin();it!=seta.end();++it) {
cout<<*it<<"\n";
index++;
}
cout<<index<<" ";
/* for (int i = 0; i < 10000000; ++i) {
x.push_back(rand());
}
for (int i = 0; i < 1000000; ++i) {
temp[x[i]]++;
}*/
/* for (int i = 0; i < 100000000; ++i) {
if(temp[i]!=0){
}
}*/
// sort(x.begin(),x.end());
/* for (int i = 0; i < 1000000; ++i) {
printf("%d ",x[i]);
}*/
printf("\n Time used = %.6f \n", (double)clock() / CLOCKS_PER_SEC);
Point a,b(1,2);
a.x=3;
// cout<<a+b<<endl;
Point point[3]={Point(1,5),Point(45,4),Point(4,56)};
cout<< sum(point,point+3)<<" \n";
/*用string读取一整行,求和
string line;
while(getline(cin,line)){
int sum=0,x;
stringstream ss(line);
while(ss>>x)sum+=x;
cout<<sum<<"\n";
}*/
return 0;
}