zoukankan      html  css  js  c++  java
  • SZU:A66 Plastic Digits

    Description

    There is a company that makes plastic digits which are primarily put on the front door of each house to form the house number. In order to make sure that they don’t waste any resources, they want to make the exact number of digits for the house numbers needed. You are to write a program to help the company decide how many copies of each digit it needs to make for each order it receives.

    Input

    The input will contains multiple test cases. The first line of the input is a single integer T (1 leq T leq 100) which is the number of test cases. T test cases follow.

    Each test case contains two positive integers n, m (1 leq n , m leq 100) which indicate the range of house numbers the company has to make for a particular order. The range is inclusive of n and m.

    Output

    For each input test case, you are to output the number of copies of each digit that the company needs to make in the following format:

    • 0 <number of copies of digit 0>
    • 1 <number of copies of digit 1>
    • ...
    • ...
    • ...
    • 9 <number of copies of digit 9>

    There should be a single space between the digit and the required copies.

    There should be a single blank line between two test cases. No blank line at the end of the last test case.

    Sample Input

    2
    1 13
    1 13
    

    Sample Output

    0 1
    1 6
    2 2
    3 2
    4 1
    5 1
    6 1
    7 1
    8 1
    9 1
    
    0 1
    1 6
    2 2
    3 2
    4 1
    5 1
    6 1
    7 1
    8 1
    9 1

    解题思路:范围 n , m 并没有说 m>n  所以要判断范围 , if n>m   swap(n, m) 

    My code :

     1 #include <stdio.h>
     2 #include <string.h>
     3 int A[10];
     4 
     5 int main()
     6 {
     7     int t, a, b,i,j,num,tmp;
     8     scanf("%d", &t);
     9     while(t--){
    10         memset(A,0,sizeof(A));
    11         scanf("%d%d",&a,&b);
    12         if(b<a){
    13             tmp = a;
    14             a = b;
    15             b = tmp;
    16         }
    17         int j=0;
    18         for(i=a;i<=b;++i){
    19             num = i;
    20             while(num>9){
    21                 A[num%10]++;
    22                 num/=10;
    23             }
    24             if(num<10)
    25                 A[num]++;
    26         }
    27             for(i=0;i<10;++i)
    28             printf("%d %d
    ", i,A[i]);
    29         if(t!=0)
    30             printf("
    ");
    31 
    32     }
    33     return 0;
    34 }
  • 相关阅读:
    httpmodule httphandler
    多线程基础
    LiveRTMP之rtmp流flash播放器无法正常播放问题解决(二)
    LiveRTMP CPU占用问题调优(一)
    LiveRTMP之MP4文件进行rtmp点播直播推送(三)
    LiveRTMP推送RTSP视频源进行RTMP直播
    LiveRTMP Android采集AAC流进行RTMP推送
    LiveRTMP 简单高效的RTMP推送库
    mac 终端 常用命令
    Keychain保存数据封装
  • 原文地址:https://www.cnblogs.com/firstrate/p/3198004.html
Copyright © 2011-2022 走看看