百度语言翻译机
$ N; T7 _9 f# J4 P/ j, F
' X5 R: A: u0 Q时限 1s
% d7 j/ l8 A. `# ~" @) x. V* z$ n# T* c8 @
百度的工程师们是非常注重效率的,在长期的开发与测试过程中,他们逐渐创造了一套他们独特的缩率语。他们在平时的交谈,会议,甚至在各中技术文档中都会大量运用。
9 A! \8 q$ w. f3 ~
0 }4 W x- d7 F+ l为了让新员工可以更快地适应百度的文化,更好地阅读公司的技术文档,人力资源部决定开发一套专用的翻译系统,把相关文档中的缩率语和专有名词翻译成日常语言。 & \- {) P/ D. D0 S- A
- I2 f* p# _. t: I输入数据: . L, d9 Y9 h- j- g7 ^+ R
2 `% }" S( [0 E- v
输入数据包含三部分 9 l e0 Z2 H6 u: P
7 q8 L$ o0 k- n, m3 m% L1. 第一行包含一个整数 N ( N<=10000 ),表示总共有多少个缩率语的词条。
, l% i4 E; i& h) F+ g6 f" X% X. O" Q2 L9 W" W
2. 紧接着有 N 行的输入,每行包含两个字符串,以空格隔开。第一个字符串为缩率语(仅包含大写英文字符,长度不超过 10 ),第二个字符串为日常语言(不包含空格,长度不超过 255 ) .
4 q2 B- U; ?& G) r: ~" A6 x8 r4 t; n% K3 A1 W# a1 n" |
3. 从第 N+2 开始到输入结束为包含缩略语的相关文档。(总长度不超过 1000000 个字符)
9 J" L/ @! u/ x. s4 D+ O$ b e4 d$ B) E. _8 ~
输出数据: 8 [ L9 s9 t- S1 r& L
6 i" x5 \9 k# u+ q, t; ]输出将缩率语转换成日常语言的文档。(将缩率语转换成日常语言,其他字符保留原样)
& D2 y: Y0 d9 W' I
, n* L. u( V0 Q2 j输入样例
) @$ P0 {; K$ p& _# U4 c$ n, V. V2 `' W* Q, E; l$ n1 q. x
6 . G, Z. s0 ^7 S# d0 t) u
5 q7 p$ \! D/ \" I/ n; `/ yPS 门户搜索部
6 s1 d9 l0 N- L6 b+ V
& {( d3 U- N3 _: h; r$ HNLP 自然语言处理 ' C; }, D, H/ C
( T& f, u4 ?" D8 mPM 产品市场部 / q9 C. H" \; ?- \4 N! O/ I
* Y) D1 ?. q! ^" L- w" E
HR 人力资源部 / S5 t( c5 L: o# c
* Y; }, |/ B% f4 S. [0 D
PMD 产品推广部 ) d) `9 n+ Y3 q, e) u- \
, J) S' U( X: OMD 市场发展部
% y. }% W. n# f; `1 Y, Q, j S; d, O( z. n# m3 x
百度的部门包括 PS , PM , HR , PMD , MD 等等,其中 PS 还包括 NLP 小组。 8 p2 g) _3 R9 `6 Q3 k$ o/ d+ [8 g
8 B. d* r. N9 l3 J% \! h4 x+ R$ b w: \
输出样例 # g/ Y8 x# ~5 `0 `% J; |
7 M9 k) x6 f8 v [; V5 _
百度的部门包括门户搜索部,产品市场部,人力资源部,产品推广部,市场发展部等等,其中门户搜索部还包括自然语言处理小组。; r2 c7 X9 Y3 Z7 B& D
" K) H8 ~* _( S" g# l
, w+ Y7 e5 r* t& g9 [& G. [4 ^4 o- a3 B
& ] T U' [8 O$ }3 t+ b2 {
注意: 7 H1 Y# R. `- q
9 s+ Q' @; i v- u% H3 M
1 . 输入数据中是中英文混合的,中文采用 GBK 编码。 4 s9 b1 E' ~/ b1 O% u7 n
5 P% O: M. a8 |2 B- J
2 . 为保证答案的唯一性,缩率语的转换采用正向最大匹配(从左到右为正方向)的原则。请注意输入例子中 PMD 的翻译。
3 I% B( ^2 w/ ?' z! Y$ t! z) ~/ h4 c1 O$ M0 R
% ?9 H' F; \7 ?! |7 t0 z$ yexample1:#include<iostream>% l" L3 I+ Z& n/ c
#include<string>% @5 L7 k0 v% _5 H( z
using namespace std;9 I- X5 ^" o9 o
int main()
5 A* K3 H- o& `% ?# }( g2 O4 \; e{string a;
" E* e. d" ^8 h1 m8 fcin>>a;
4 u! ]) \: h, V+ E( X- g* s# E1 S9 E& R8 H0 B. r7 W
if (a=="PS") cout<<"门户搜索部";
- {: i) l. ?$ P. D/ dif ( a=="NL")cout<<"自然语言处理";
+ m) c+ ~. d2 x# D8 {if (a== "PM")cout<<"产品市场部";
( z+ V p$ C) Y; z. W2 S4 v6 }if (a== "HR")cout<<"人力资源部";6 @7 C" k1 {: {1 v* C
if (a=="PMD")cout<<"产品推广部";- d& ?5 _; T( p; C& ~) x/ {5 t( O
if (a=="MD") cout<<"市场发展部";
$ P1 f& t. [8 r3 b6 l1 p- T/ r, Q3 Qelse cout<<"no";, Q+ r* X: g. M. X P2 E
/ y9 m7 L. o- {' H
return 0;
. j. P! i4 B! d& W% n* T& `}# ]5 F" ~: D$ s- f& k6 ~2 m( s" i
example2:#include<iostream>4 y3 G; o4 R4 H/ p
using namespace std;; U1 _2 [: P1 ~0 o2 `: w$ H
int main()
% w) j* f1 o9 @* K7 m: I3 _- A{string a;
9 ~' a: Y& g: z/ J: }3 Bcin>>a;
! f$ O/ S% K% {5 J S5 p8 E a9 Nswitch(a); \. N3 Y N. I0 E5 V2 r
{case 'PS':cout<<"门户搜索部";0 P. b9 z* p* b# N* d/ T
case 'NLP':cout<<"自然语言处理";
7 l' k" Z* S; D/ \* ?' [( D Ycase 'PM':cout<<"产品市场部";
' Y. P- c' S: J; Ucase 'HR':cout<<"人力资源部";
7 M* H7 p1 }% f* P) Ycase 'PMD':cout<<"产品推广部";6 [; [7 u# _$ ]
case 'MD':cout<<"市场发展部";
" D5 d w: g4 M; a! Rdefault:cout<<"error";5 g8 N6 }/ j: R
}
4 F* | k+ U4 M- nreturn o; q. N, u* k( j
}example3:#include<iostream>1 A+ H( H, M2 C/ L# _6 f
using namespace std;/ U2 E9 h) M0 k/ d6 ?# n6 X) G
int main()6 @! G" O6 G, P" O! ^" x$ \$ ]% s
{string a;
+ v/ Y' R1 w. R! Y. z6 hcin>>a;9 j( v- g/ s1 V' X0 n
switch(a)
# l# j" [ H0 l& _$ R% n{case 'PS':cout<<"门户搜索部";
. p# _) ], Y0 N0 p: ncase 'NLP':cout<<"自然语言处理";& ~4 ]" {7 w& N# T) V% X) q
case 'PM':cout<<"产品市场部";
5 O. z8 B0 C C w9 Tcase 'HR':cout<<"人力资源部";9 F& i( S6 h2 x0 ~
case 'PMD':cout<<"产品推广部";) P7 T7 l3 A# B2 U4 u# e) R. p. C
case 'MD':cout<<"市场发展部";: m4 C2 ~9 I" T% w, ?8 ]3 ]& T
default:cout<<"error";: `8 i$ M- v% n8 N
}$ s; d$ `6 |% p- j" i2 ~
return o;
+ g! N' [( A4 G8 N$ J+ W* j} |