被3整除

每三个数可以当作一个循环

第一项 1

    1%3==1

第二项 12

    1%3==1

    2%3==2

(1+2)%3==0

第三项123

    1%3==1

    2 %3==2

    3%3==0

    (1+2+0)%3==0

由此得出规律:

    余数是1 加上余数2 可以被3整除

    而余数是0代表本身就能被3整出

    所以每三项一循环

代码如下:

#include<stdio.h>

int sums(int x)
{
    if(x%3==0||x%3==1)
        return x/3*2;
    else
        return x/3*2+1;
}
int main()
{
    int n,m;
    scanf("%d%d",&n,&m);
    int sum=sums(m)-sums(n-1);
    printf("%d",sum);
}

版权声明:本文为qq_36640999原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。