求从1到500的整数中能被3和5整除但不能被7整除的数的个数

     设为1到500的整数中能被i整除的数的集合,

则,,,

,,,

     满足条件的整数个数为:,根据容斥原理有:

 

      我知道是容斥原理,关键是不知道最后一个公式,用两个集合想想韦氏图就行了。

时间: 2024-10-03 06:00:49

求从1到500的整数中能被3和5整除但不能被7整除的数的个数的相关文章

求整数中1出现的次数

题目描述: 亲们!!我们的外国友人YZ这几天总是睡不好,初中奥数里有一个题目一直困扰着他,特此他向JOBDU发来求助信,希望亲们能帮帮他.问题是:求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了.ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数. 输入: 输入有多组数据,每组测试数据为一行. 每一行有两个整数a,b(

c语言-给出一批整数,分析每个整数中的每个数字,求每个数字出现的字数。

问题描述 给出一批整数,分析每个整数中的每个数字,求每个数字出现的字数. #include #include #include #define SIZE sizeof(int) int main() { int num_str[32],count[10],*p,*head,*pt; int n,i,num; scanf("%d",&n); //给出整数个数 for(i=0;i<10;i++) count[i]=0; p=(int *)malloc(n*SIZE); hea

Google面试题解析:从1到n的整数中1出现的次数

题目:输入一个正整数n,求从1到n这n个整数的十进制表示1出现的次数. 例如: 例如输入12, 那么从1到12的整数中出现1的整数为:1,10, 11和12,1一共出现5次. 分析: 这题可以简单计算每个数中包含的1的个数,再遍历1-n个整数. 实现如下: #include<iostream> using namespace std; int count_num(int v) { int i = v; int num = 0; while(i > 0) { if(i%10 == 1) n

剑指offer系列之三十:整数中1出现的次数

题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了.ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数. 有一种比较简洁的思路:由于是一个整数区间,所以可以对每一个数进行判断,那么如何判断某个数中1出现了多少次呢?注意到如果一个数一直被10除,如果被10整除后的余数是1,那么一定出现了数字1.举个例子,数字11

表单-求大神帮我看看web中的这个问题

问题描述 求大神帮我看看web中的这个问题 在表单提交了,就会弹出这样一些东西,说是空指针异常,但具体是哪里我并不知道,烦请大神们帮我看看. HTTP Status 500 - java.lang.NullPointerException type Exception report message java.lang.NullPointerException description The server encountered an internal error that prevented i

《剑指offer》-整数中1出现的次数

题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1.10.11.12.13因此共出现6次,但是对于后面问题他就没辙了.ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数. 直接暴力可以过.但是不优美. 尝试推导公式,思路是递归求解,发现假如n都是999,99999这种全9的数字会很好处理:f(n)=g(t)*f(h(n)), 其中t表示n的第一个位,h(n)表示n去掉第一位,

[经典面试题]给你一个自然数N,求[6,N]之内的所有素数中,两两之和为偶数的那些偶数

[题目] 给你一个自然数N,求[6,N]之内的所有素数中,两两之和为偶数的那些偶数 ---------百度校招 [分析] 1.对于给定的N,我们可以用筛法求素素数的方法在O(n)的时间复杂度内求出所有的素数. 2.除2之外,所有的素数相加都为偶数,所以求出6~N之间的素数,打印两两的和就可以,时间复杂度O(n^2) [代码] #include <iostream> #include <cstring> #include <algorithm> using namespa

大神,C++代码递归代码求详细注释,特别是if中的看不懂,谢谢了

问题描述 大神,C++代码递归代码求详细注释,特别是if中的看不懂,谢谢了 void foo(int x, int y) { if (x > 1000) return; if (x == y && x == 1) { printf("%d %d ", 1, 1); foo(x + y, x); return; } else { printf("%d ", x); foo(x + y, x); } } 解决方案 void foo(int x, i

算法 递归 数据结构-算法数据结构关于查找比较的小问题。通过“比较”找n个整数中最大

问题描述 算法数据结构关于查找比较的小问题.通过"比较"找n个整数中最大 通过"比较"找n个整数中最大数时,算法至少要做_次. A.log n B.nlog n C.n-1 D.n 解决方案 答案应该是C.每个值比较一次即可.