求1到300的整数中 能被3或5或7整除的数的个数

1个回答

  • 首先先说一下容斥原理:

    A∪B∪C=A+B+C-A∩B-A∩C-B∩C+A∩B∩C

    此处,可将

    A表示为能被3整除的数,也就是3的倍数;

    B表示为能被5整除的数,也就是5的倍数;

    C表示为能被7整除的数,也就是7的倍数;

    A∩B表示为能同时被3、5整除的数,也就是15的倍数;

    A∩C表示为能同时被3、7整除的数,也就是21的倍数;

    B∩C表示为能同时被5、7整除的数,也就是35的倍数;

    A∩B∩C表示为能同时被3、5、7整除的数,也就是105的倍数;

    于是A∪B∪C表示能被3或5或7整除的数.

    你的问题中,300描述不清楚,包含300吗?

    下面我就将300包含进去.

    下面说一下高斯取整符号[],[x]表示不超过x的最大整数.

    容易计算得知,

    A=[300÷3]=100个

    B=[300÷5]=60个

    C=[300÷7]=42个

    A∩B=[300÷15]=20个

    A∩C=[300÷21]=14个

    B∩C=[300÷35]=8个

    A∩B∩C=[300÷105]=2个

    于是,

    A∪B∪C

    =A+B+C-A∩B-A∩C-B∩C+A∩B∩C

    =100+60+42-20-14-8+2

    =162个.

    也就是说,假若从1到300,包含300的话,

    被3或5或7整除的数有162个.

    不包含300的话,

    被3或5或7整除的数有161个.(舍去300这个数)

    【经济数学团队为你解答!】