0127-Pocket Pager Input

http://rose.u-aizu.ac.jp/onlinejudge/ProblemSet/description.jsp?id=0127
指示通りに変換するだけ。
もっと長いコメントを書きたい。

#include<iostream>
#include<string>
using namespace std;
char d[4]={'.','?','!',' '};
int main(){
	string s,r;int i,o,t,m,n;
	while(cin >> s,!cin.eof()){
		r="";
		o=1;if((s.size()&1)!=0) o=0;
		for(i=0;i<s.size()/2*2;i+=2){
			m=s.at(i);n=s.at(i+1);
			t=(m-'1')*5+n-'1';
			if(n>'5'||m>'6'||m<'1'||n<'1')o=0;
			if(t<26)r+='a'+t;else r+=d[t-26];
		}
		if(!o)cout <<"NA\n";else cout <<r<<endl;
	}
	return 0;
}