網易C++面試題--被3整除
阿新 • • 發佈:2018-06-22
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整除