被3整除

小Q得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。
并且小Q对于能否被3整除这个性质很感兴趣。
小Q现在希望你能帮他计算一下从数列的第l个到第r个(包含端点)有多少个数可以被3整除。

输入

2 5

输出

3
/*12, 123, 1234, 12345...
其中12, 123, 12345能被3整除。*/

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;

int main(){
    ll l , r;
    while(cin >> l >> r){
        ll count = 0;
        for(long i = l; i <= r; i++){//这里的i也用长整型
            if((i+1)*i/2 % 3 == 0) //各个位数之和是三的倍数,因为最后的1011(1+0+1+1)与10+11都是3的倍数所以可以不用管
                count++;
        }
        cout << count << endl;
    }
    return 0;
}
全部评论

相关推荐

03-04 19:02
云南大学 Java
Yki_:没挂,只是没人捞,该干啥干啥,等着就好了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
01-31 04:00
神哥不得了:首先我就是在成都,成都的互联网格外的卷,如果是凭现在的简历的话很难找到大厂,建议再添加一个高质量的项目上去,另外专业技能的话最好是超过每一条的一半
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务