2014年4月14日月曜日

会津大学オンラインジャッジ 問127 Pocket Pager Input

ポケベルを題材にした問題。
今の若者にポケベルは通用するのだろうか?
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0127

AOJの問題を復習中でこの問題もその一つなのですが。
昔自分が書いたコードのほうが賢かったので賢いほうを掲載。
なるほど文字数が合わなければ途中で処理に失敗してるわけか。
昔の自分賢いな、感心。
今の自分頭悪いな。


#include<stdio.h>
#include<string.h>

char memo[6][6]={"abcde","fghij","klmno","pqrst","uvwxy","z.?! "};

int main(){
    char mes[201],ans[101];
    int p,len,t1,t2;
    while(scanf("%s",mes)!=EOF){
        len=strlen(mes);
        p=0;
        if(len%2==0){
            while(p<len){
                t1=mes[p];
                t2=mes[p+1];
                if(t1<'1' || '6'<t1 || t2<'1' || '5'<t2){
                    break;
                }else{
                    ans[p/2]=memo[t1-'1'][t2-'1'];
                    p+=2;
                }
            }
        }
        ans[len/2]='\0';
        printf("%s\n",p>=len?ans:"NA");
    }
}

0 件のコメント:

コメントを投稿