1. 程式人生 > >網易C++面試題--被3整除

網易C++面試題--被3整除

AS In 如果 typedef tro class PE 一個數 證明

小Q得到一個神奇的數列: 1, 12, 123,...12345678910,1234567891011...。

並且小Q對於能否被3整除這個性質很感興趣。

小Q現在希望你能幫他計算一下從數列的第l個到第r個(包含端點)有多少個數可以被3整除。

輸入描述:
輸入包括兩個整數l和r(1 <= l <= r <= 1e9), 表示要求解的區間兩端。



輸出描述:
輸出一個整數, 表示區間內能被3整除的數字個數。

輸入例子1:
2 5

輸出例子1:
3

例子說明1:
12, 123, 1234, 12345...
其中12, 123, 12345能被3整除。


判斷一個數能否被3整除:把這個數的所以位加起來,如果能除3余0,證明這個數能被3整除
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
int main()
{
    LL l,r;
    scanf("%lld%lld",&l,&r);
    int num = 0;
    for(LL i=l;i<=r;i++)
    {
        LL ans = (i+1)*i;
        if(ans%6==0) num++;
    }
    printf("%d\n",num);
}

  

網易C++面試題--被3整除