网易前端笔试题-1
写在前,只分析编程题,用JavaScript或C++解题
小Q得到一个神奇的数列: 1, 12, 123,…12345678910,1234567891011…。
并且小Q对于能否被3整除这个性质很感兴趣。
小Q现在希望你能帮他计算一下从数列的第l个到第r个(包含端点)有多少个数可以被3整除。
要求:输入 2,5
输出:3
function count(n,m){
var jishu=0;
//获取数据
if(n<m){
var n = n;
var m = m;
}else{
var n = m;
var m = n;
}
//区间求和函数
function qujian(num){
var a = 0;
for(var i = 1;i<num;i++){
a +=i;
}
return a
}
//上区间
var leftnum = qujian(n); //左开区间取和也就是当n=3;s=1+2;
for(var i=n;i<=m;i++){
if((leftnum=leftnum+i)%3===0){
jishu++;//符合计数,能被3整除,各个位数字之和也能被3整除
}else{
continue
}
}
return jishu;
}