hdu 短

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 172   Accepted Submission(s) : 7

Font: Times New Roman | Verdana | Georgia

Font Size: ← →

Problem Description

输出[L, R]中能被9整除的数的个数

Input

多组测试数据

每组测试数据包含两个数L和R

所有数据都在int范围内。

Output

每组数据输出一个整数,表示区间[L, R]中能被9整除的数的个数

Sample Input

1 9
1 10

Sample Output

1
1

/*题解:

有点略坑的题,考虑完所有的情况再Wrong了一次的情况下A了。

注意点:

输入数据为int范围内的整数,所以可以是负数,例如-18、-19

输入数据不一定L<=R,所以先判断大小并交换位置。(L<=R则不用交换)

0也可以被9整除

【0,0】,【9,9】,【-9,-9】能被整除个数均为1

提供几组数据:

【0,19】 3

【9,18】 2

【-18,-9】 2

【-20,9】 4

【-18,-7】 2

*/

#include<cstdio>
#include<cmath>
#include<stdlib.h>
int main(){
    int l,r,t;
    while(scanf("%d %d",&l,&r)!=EOF)
    {
        if(l>r)//不交换会Output Limit Exceeded
        {
            t=l;
            l=r;
            r=t;
        }
        if(l==r)//情况一、l==r
        {
            if(l%9==0)
            {
                printf("1\n");
            }
            else printf("0\n");
        }
        else
        {
            if(l>0)//l>0,r>0
            {
                printf("%d\n",r/9-(l-1)/9);
            }
            else if(l==0)//l==0,r>0
            {
                printf("%d\n",r/9+1);
            }
            else if(l<0)
            {
                if(r==0)//l<0,r==0
                {
                    printf("%d\n",abs(l/9)+1);
                }
                else if(r<0)//l<0,r<0
                {
                    printf("%d\n",abs(l/9)-(abs(r)-1)/9);
                }
                else if(r>0)//l<0,r>0
                {
                    printf("%d\n",r/9+abs(l/9)+1);
                }
            }
        }
    }
    return 0;
}
时间: 2024-08-26 03:42:24

hdu 短的相关文章

hdu 3191 How Many Paths Are There (次短路径数)

How Many Paths Are There Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1010    Accepted Submission(s): 332 Problem Description oooccc1 is a Software Engineer who has to ride to the work place

HDU 4291 A Short problem 短问题 (递推,微变型)

题意:给出递推式 g(n) = 3g(n - 1) + g(n - 2),且g(1) = 1,g(0) = 0.求g( g( g(n))) mod 109 + 7. 思路:要求的g( g( g(n)))一共里外3层.看到时间限制1s,数据最大10^18,必定不能老实递推,要么有循环,要么用通项公式.这里用通项公式太麻烦了,数字不好算,而g(n)%109 + 7是有规律的, 在n=222222224之后会出现循环,也就是n=0和n=222222224的g(n)是一样的,这是最外层.那么也就是说在g

HDU 3790-最短路径问题(双权最短路)

最短路径问题 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 13700    Accepted Submission(s): 4201 Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的. Input

畅通project续HDU杭电1874【dijkstra算法 || SPFA】

http://acm.hdu.edu.cn/showproblem.php?pid=1874 Problem Description 某省自从实行了非常多年的畅通project计划后.最终修建了非常多路.只是路多了也不好,每次要从一个城镇到还有一个城镇时,都有很多种道路方案能够选择,而某些方案要比还有一些方案行走的距离要短非常多.这让行人非常困扰. 如今,已知起点和终点,请你计算出要从起点到终点.最短须要行走多少距离. Input 本题目包括多组数据.请处理到文件结束. 每组数据第一行包括两个正

hdu 1874(Dijkstra )

链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874 畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 27692    Accepted Submission(s): 10019 Problem Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路

HDU 5122 K.Bro Sorting(模拟——思维题详解)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5122 Problem Description Matt's friend K.Bro is an ACMer. Yesterday, K.Bro learnt an algorithm: Bubble sort. Bubble sort will compare each pair of adjacent items and swap them if they are in the wrong o

HDU 1043 Eight八数码解题思路(bfs+hash 打表 IDA* 等)

题目链接 https://vjudge.net/problem/HDU-1043 经典的八数码问题,学过算法的老哥都会拿它练搜索 题意: 给出每行一组的数据,每组数据代表3*3的八数码表,要求程序复原为初始状态 思路: 参加网站比赛时拿到此题目,因为之前写过八数码问题,心中暗喜,于是写出一套暴力bfs+hash,结果TLE呵呵 思路一:bfs+hash(TLE) 1 #include <cstdio> 2 #include <cstring> 3 #include <queu

HDU 2502 月之数(二进制,规律)

月之数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 10273    Accepted Submission(s): 6003 Problem Description 当寒月还在读大一的时候,他在一本武林秘籍中(据后来考证,估计是计算机基础,狂汗-ing),发现了神奇的二进制数. 如果一个正整数m表示成二进制,它的位数为n(不包含前

HDU 2504 又见GCD(最大公约数与最小公倍数变形题)

又见GCD Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 18480    Accepted Submission(s): 7708 Problem Description 有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b.若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c. Input 第一行输入一个n