用倍加标记2---n-1中所有的合数,剩下的都是素数,结果减3(除去2,3,5)
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 给定一个数字n,返回[7,n)内有多少素数。
     * @param n int整型 代表题目中的n
     * @return int整型
     */
    int solve(int n) {
        // write code here
        vector<bool> flag(n);
        int count=0;
        for(int i=2;i<n;i++){
            if(!flag[i-1]){
                count++;
                for(int j=i*i;j<n;j+=i){
                    flag[j-1]=true;//标记合数
                }
            }
        }
        return count-3;
    }
};