Re: [问题] Uva judge 739

楼主: RishYang (Rish)   2019-05-16 13:14:37
解题前,先明白题目叙述
题目来源: Uva Online Judge
题号: 739 Soundex Indexing
Soundex Index System的发明
使得有类似拼音或是拼字的名字
可以透过该系统编码后方便讯息检索
Soundex Index System在美国被应用在人口普查局与某些州的汽车驾照上。
你要实作一个Soundex Index System
将输入用Soundex Index System编码
Soundex Index System编码规则:
1. 名字的第一个字母会成为编码的第一个
且唯一出现在编码的字母
2. A,E,I,O,U,Y,W,H不编码,然而它会破坏编码的连续性
3. 其余字母都编码,除了该字母的编码与前一个字母的编码相同
(包括名字的第一个字母)
4. 相对应的编码
1: B,P,F,V
2: C,S,K,G,J,Q,X,Z
3: D,T
4: L
5: M,N
6: R
5. 短的编码要补0,让全部的编码都是一个字母后面配上三个数字
6. 长的编码要舍去第三个数字以后的数字
输入:
多行名字,一行一个,全英文字母大写,长度[1-20]
直至读到EOF
输出:(假设有输入了: LEE\nKUHEN\nEBELL\nEBELSON\nSCHAEFER\nSCHAAK)
NAME SOUNDEX CODE
LEE L000
KUHNE K000
EBELL E140
EBELSON E142
SCHAEFER S160
SCHAAK S200
END OF OUTPUT
NAME字段要对其从第10栏为开头
SOUNDEX CODE字段要对齐从第35栏为开头
END OF OUTPUT要从第20为开头
C语言实作
https://ideone.com/9C3CWd
里面有注解解释流程
作者: Ori185 (Ori185)   2019-05-21 11:53:00
有点久才回非常抱歉,我解决了谢谢!

Links booklink

Contact Us: admin [ a t ] ucptt.com