码迷,mamicode.com
首页 > 其他好文 > 详细

Light OJ 1136

时间:2014-12-17 06:46:57      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   os   sp   for   on   div   

Division by 3.

发现一些规律:

一个数的数字和相加能被三整除,那么这个数也能被3整除。(1)

然后可以发现:

连续三个整数并排在一起组成的数的数字和必然能被3整除。(2)

最后通过(2)总结出:

1.题目中的第3K个数,必然能被三整除。

2. 题目中的第3K + 1个数,其第2个数字到最末一个数字之和必然能被3整除,再加上第一个数字,也就是1,就不能被3整除了。

3. 题目中的第3K + 2个数,其第3个数字到最末一个数字之和必然能被3整除,再加上第一、二个数字,也就是1 + 2 = 3,也能被3整除。

 

代码如下:

#include <cstdio>  
#include <cstring>  
#include <algorithm>  
#include <iostream>  
using namespace std;  
int fun(int n)  
{  
    if(n==1||n==0)  
        return 0;  
    return n-1-(n-1)/3;  
}  
int main()  
{  
    int a,b,t;  
    scanf("%d",&t);  
    for(int i=1;i<=t;i++)  
    {  
        scanf("%d%d",&a,&b);  
        printf("Case %d: %d\n",i,fun(b)-fun(a-1));  
    }  
    return 0;  
}  

 

Light OJ 1136

标签:style   blog   io   color   os   sp   for   on   div   

原文地址:http://www.cnblogs.com/miaoz/p/4168515.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!