zoukankan      html  css  js  c++  java
  • Read Phone Number

    /*
     * =====================================================================================
     *
     *       Filename:  readphonenumber.c
     *
     *    Description:  
     *
     *        Version:  1.0
     *        Created:  2014年02月16日 10时16分13秒
     *       Revision:  none
     *       Compiler:  gcc
     *
     *         Author:  Wenxian Ni (Hello World~), niwenxianq@qq.com
     *   Organization:  AMS/ICT
     *
     * =====================================================================================
     */
    
    
    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    
    void PrintNumber(char n, int m)
    {
        int i;
        switch(m)
        {
            case 1:
                break;
            case 2:
                printf("double ");
                break;
            case 3:
                printf("triple ");
                break;
            case 4:
                printf("quadruple ");
                break;
            case 5:
                printf("quintuple ");
                break;
            case 6:
                printf("sextuple ");
                break;
            case 7:
                printf("septuple ");
                break;
            case 8:
                printf("octuple ");
                break;
            case 9:
                printf("nonuple ");
                break;
            case 10:
                printf("decuple ");
                break;
            default:
                break;
        }
        switch(n)
        {
            case '0':
                printf("zero");
                break;
            case '1':
                printf("one");
                break;
            case '2':
                printf("two");
                break;
            case '3':
                printf("three");
                break;
            case '4':
                printf("four");
                break;
            case '5':
                printf("five");
                break;
            case '6':
                printf("six");
                break;
            case '7':
                printf("seven");
                break;
            case '8':
                printf("eight");
                break;
            case '9':
                printf("nine");
                break;
            defalut:
                break;
        }
    }
    void ReadNumber(char *q, int n)
    {
        if(n==1)
        {
            PrintNumber(*q, 1);
            return ;
        }
        char *p = q+1;
        int i = 1;
        int m = 1;
        for(i=2;i<=n;p++,i++)
        {
            if(*p==*(p-1))
            {
                m++;
            }
            else
            {
                PrintNumber(*(p-1), m);
                printf(" ");
                m = 1;
            }
        }
        PrintNumber(*(p-1), m);
    }
    
    int main()
    {
        int T;
        int ncase;
        int lens;
        char numberPhone[200];
        char splitNumber[400];
        char *buf, *nub, *spl;
        freopen("in.in","r",stdin);
        freopen("out.in","w",stdout);
        while(~scanf("%d",&T))
        {
            ncase=1;
            while(ncase!=T+1)
            {
                scanf("%s",numberPhone);
                scanf("%s",splitNumber);
                printf("Case #%d: ",ncase);
                nub = numberPhone;
                spl = splitNumber;
                buf = strstr(spl,"-");
                lens = 0;
                while(buf!=NULL)
                {
                    buf[0]='';
                    nub += lens;
                    lens = atoi(spl);
                    ReadNumber(nub,lens);
                    spl = buf + 1;
                    buf = strstr(spl,"-");
                    printf(" ");
                }
                nub += lens;
                lens = atoi(spl);
                ReadNumber(nub,lens);
                printf("
    ");
                ncase++;
            }
        }
        return 0;
    }
    
    小数据可过,大数据还要改正下

    http://code.google.com/codejam/contest/2924486/dashboard

    每天早上叫醒你的不是闹钟,而是心中的梦~
  • 相关阅读:
    PHP面向对象编程入门
    PHP错误处理机制
    PHP数组深入
    PHP 表单
    多重背包之单调队列优化理论性总结
    二分查找理论性总结
    大连海事大学第十届程序设计竞赛 题解
    Codeforces Round #603 (Div. 2) E. Editor (线段树维护前缀和最值)
    Educational Codeforces Round 77 (Rated for Div. 2) E. Tournament (DP)
    Leetcode1256 加密数字(手动找规律)
  • 原文地址:https://www.cnblogs.com/vintion/p/4116944.html
Copyright © 2011-2022 走看看