1044. 火星数字(20)PAT乙级&&1100. Mars Numbers (20)PAT甲级
2017-02-02 20:29
519 查看
甲级传送门
乙级传送门
乙级传送门
#include<stdio.h> #include<iostream> #include<map> #include<string> #define MAX_N 180 using namespace std; string unit[13]={"tret","jan","feb","mar", "apr", "may", "jun", "jly", "aug", "sep", "oct", "nov", "dec"}; string decade[13]={"tret","tam", "hel", "maa", "huh", "tou", "kes", "hei", "elo", "syy", "lok", "mer", "jou"}; string NumToStr[MAX_N]; map<string,int > StrToNum; void init(){ for(int i=0;i<13;i++){ NumToStr[i]=unit[i]; StrToNum[unit[i]]=i; NumToStr[i*13]=decade[i]; StrToNum[decade[i]]=i*13; } for(int i=1;i<13;i++){ for(int j=1;j<13;j++){ string str=decade[i]+" "+unit[j]; NumToStr[i*13+j]=str; StrToNum[str]=i*13+j; } } } int main(){ int T; string str; init(); cin>>T; getchar(); while(T--){ getline(cin,str); if(str[0]>='0'&&str[0]<='9'){ int num=0; for(int i=0;i<str.length();i++){ num=num*10+(str[i]-'0'); } cout<<NumToStr[num]<<endl; } else{ cout<<StrToNum[str]<<endl; } } }
相关文章推荐
- PAT 乙级 1044. 火星数字(20) Java版
- PAT Basic 1044. 火星数字(20)(C语言实现)
- [PAT乙级]1044. 火星数字(20)
- C++ - PAT - 1044. 火星数字(20)
- 1100. Mars Numbers (20)-PAT甲级真题
- PAT - 甲级 - 1100. Mars Numbers (20)(字符串处理)
- PAT 甲级 1100. Mars Numbers (20)
- 1044. 火星数字(20)-浙大PAT乙级真题java实现
- 1044. 火星数字(20) PAT乙级真题
- PAT乙级1044. 火星数字(20)
- PAT 乙级 1044. 火星数字(20)
- PAT 1044. 火星数字(20)
- PAT乙级 1044. 火星数字(20)
- PAT乙级1044(C语言)-火星数字(20)
- PAT (Basic Level) Practise (中文)1044. 火星数字(20) C语言
- PAT 乙级 1044. 火星数字(20)
- 1044. 火星数字(20) PAT
- 【PAT】1044. 火星数字(20)
- 1044. 火星数字(20)-PAT乙级真题
- PAT-乙级-1044. 火星数字(20)