Leetcode:204
编写一个程序判断给定的数是否为丑数。丑数就是只包含质因数 2, 3, 5 的正整数。
统计所有小于非负整数 n 的质数的数量。
示例:
输入: 10
输出: 4
解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。
 1class Solution {
 2public:
 3    int countPrimes(int n) {
 4        if(n<=1)
 5        {
 6            return 0;
 7        }
 8        int res = 0;
 9        int val = (int)sqrt(n);
10        bool flag[n] = {0};
11        for(int i = 2;i<=val;i++){   //find the prime between 2 and √n 
12            if(flag[i]==false){
13                for(int j = i*i;j<n;j+=i){
14                    if(flag[j]==false)
15                    {
16                        res++;      //Recording non-prime numbers,4,6,8,10,12,9 
17                    }
18                    flag[j] = true; //set the flag                       
19                }  
20            }
21        }
22        return n-res-2;          
23    }
24};
Leetcode:204的更多相关文章
- leetcode:Roman to Integer(罗马数字转化为罗马数字)
		
Question: Given a roman numeral, convert it to an integer. Input is guaranteed to be within the rang ...
 - (leetcode:选择不相邻元素,求和最大问题):打家劫舍(DP:198/213/337)
		
题型:从数组中选择不相邻元素,求和最大 (1)对于数组中的每个元素,都存在两种可能性:(1)选择(2)不选择,所以对于这类问题,暴力方法(递归思路)的时间复杂度为:O(2^n): (2)递归思路中往往 ...
 - Leetcode:003 无重复字符串
		
Leetcode:003 无重复字符串 关键点:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度.示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复 ...
 - Leetcode:0002(两数之和)
		
LeetCode:0002(两数之和) 题目描述:给定两个非空链表来表示两个非负整数.位数按照逆序方式存储,它们的每个节点只存储单个数字.将两数相加返回一个新的链表.你可以假设除了数字 0 之外,这两 ...
 - LeetCode:课程表II【210】
		
LeetCode:课程表II[210] 题目描述 现在你总共有 n 门课需要选,记为 0 到 n-1. 在选修某些课程之前需要一些先修课程. 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一 ...
 - LeetCode:课程表【207】
		
LeetCode:课程表[207] 题目描述 现在你总共有 n 门课需要选,记为 0 到 n-1. 在选修某些课程之前需要一些先修课程. 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹 ...
 - LeetCode:前K个高频单词【692】
		
LeetCode:前K个高频单词[692] 题目描述 给一非空的单词列表,返回前 k 个出现次数最多的单词. 返回的答案应该按单词出现频率由高到低排序.如果不同的单词有相同出现频率,按字母顺序排序. ...
 - LeetCode:前K个高频元素【347】
		
LeetCode:前K个高频元素[347] 题目描述 给定一个非空的整数数组,返回其中出现频率前 k 高的元素. 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [ ...
 - LeetCode:数组中的第K个最大元素【215】
		
LeetCode:数组中的第K个最大元素[215] 题目描述 在未排序的数组中找到第 k 个最大的元素.请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素. 示例 1: ...
 
随机推荐
- 2015 Multi-University Training Contest 6 solutions BY ZJU(部分解题报告)
			
官方解题报告:http://bestcoder.hdu.edu.cn/blog/2015-multi-university-training-contest-6-solutions-by-zju/ 表 ...
 - 挑战常规--为什么不应该使用Jsonp进行跨域
			
常规跨域的方法 常见跨域的方法有: 添加Access-Control-Allow-Origin 后台服务器代理 Jsonp 1.2两种方法都是安全可靠的,3是不安全不可靠的 Json的本质 Json本 ...
 - Redis配置解读
 - MongoDB复合索引详解
			
摘要: 对于MongoDB的多键查询,创建复合索引可以有效提高性能. 什么是复合索引? 复合索引,即Compound Index,指的是将多个键组合到一起创建索引,这样可以加速匹配多个键的查询.不妨通 ...
 - Angular6 项目开发常用时间组件服务
			
一.利用Angular 命令行工具生成一个服务. 详情见:<Angular环境搭建>,服务代码如下: import { Injectable } from '@angular/core'; ...
 - js求渐升数的第100位
			
我弟考了道数学竞赛题,问我能不能用代码算结果.. 题目是这样的 用 1.2.3.4.5 组合数字,然后排列大小,从小到大,求排在第100位的数值大小 function foo(chars) { ; i ...
 - 在Arcmap中加载互联网地图资源的4种方法
			
前一段时间想在Arcmap中打开互联网地图中的地图数据,如影像数据.基础地图数据等,经过简单研究目前总结了四种方法,整理下与大家分享,有些内容可能理解有误,希望大家多多指教.4种方法如下: a) ...
 - Jmeter接口测试问题及解决方法积累
			
一.各个类型参数的位置 plain body query parameter URI 路径上 二.特殊字符处理 \"作为参数输入到接口,会出现错误 响应断言中如果有用到正则表达式,不能包含正 ...
 - mysql之事务管理
			
本文内容: 什么是事务管理 事务管理操作 回滚点 默认的事务管理 首发日期:2018-04-18 什么是事务管理: 可以把一系列要执行的操作称为事务,而事务管理就是管理这些操作要么完全执行,要么完全不 ...
 - JAVA基础库的使用点滴
			
Idea中双击SHIFT可以搜索[Eclipse中也有],这个很重要,可以找到当前的项目中可以引擎的已有的类,不要再次自己发明轮子 各种Util先在基础库和开源库中找 Base64编码 guava:c ...