百度语言翻译机 4 M) @5 E+ [% C) |. K, ?
5 ~$ f2 @0 k9 v f' G
时限 1s 8 A/ g# ^& _6 f# i5 ^4 o2 r- r5 [
; o+ r- H1 y) v8 n4 v* l
百度的工程师们是非常注重效率的,在长期的开发与测试过程中,他们逐渐创造了一套他们独特的缩率语。他们在平时的交谈,会议,甚至在各中技术文档中都会大量运用。
" I; v# u) r8 P; P" r n+ Z/ U- P. e$ y; a+ N- g# `
为了让新员工可以更快地适应百度的文化,更好地阅读公司的技术文档,人力资源部决定开发一套专用的翻译系统,把相关文档中的缩率语和专有名词翻译成日常语言。
, C4 H* M) V( N( r9 t: m/ _5 E* d
: {5 g& S' R% Q+ h2 |输入数据: * R7 F8 Q4 a! [; E/ {- ]' }
4 r" _, L/ J* B( ~, m
输入数据包含三部分 , y2 x+ U5 \5 F' b& d4 ]- U
# x3 E! E( f- V$ b1 X1. 第一行包含一个整数 N ( N<=10000 ),表示总共有多少个缩率语的词条。 1 i9 r5 j# ?. e' v: ~+ _* H2 K
" r# o& I& p" V9 b2. 紧接着有 N 行的输入,每行包含两个字符串,以空格隔开。第一个字符串为缩率语(仅包含大写英文字符,长度不超过 10 ),第二个字符串为日常语言(不包含空格,长度不超过 255 ) .
% V5 c$ l/ _1 [, _* {8 S4 x& h
! B" P& e9 S8 F. D3. 从第 N+2 开始到输入结束为包含缩略语的相关文档。(总长度不超过 1000000 个字符)
, Q! m4 g( g4 n: s( y
; } A# W# p$ T! B* e( l输出数据:
* n6 n1 v# @5 s# v( o8 r: Y8 H( v
输出将缩率语转换成日常语言的文档。(将缩率语转换成日常语言,其他字符保留原样)
% ^7 ]) E8 Y- {6 m* Y- h4 v- [4 ?4 Z2 r3 s
输入样例 ' [# h6 p3 D. Q6 b! e
0 T8 a* T. W9 g! \" C) V6
; b- |. F# T* t- b
" H# {: O% e2 C% V) N, T+ PPS 门户搜索部
/ P* l) I% q* W; w
9 F+ z. x. E) w4 W7 I% V8 ENLP 自然语言处理 ! t; H( I% |1 S; ^+ `$ H: a8 y/ ~. ], c
% A; b" @; O+ F/ b* x! |, J
PM 产品市场部
: L* ~% }7 U$ j, S0 D! U6 e1 E' W8 H; a: `5 C2 |6 m1 G( E" W
HR 人力资源部 " B: Y0 N ?3 P: z
0 c8 {8 ?, n) V: u! }
PMD 产品推广部
% Y; \0 l5 d+ ?4 M5 Q) R8 U; @# j* M8 w# x
MD 市场发展部 ( Y3 b5 m; d* f$ ?0 o- J
[( \. G7 w m百度的部门包括 PS , PM , HR , PMD , MD 等等,其中 PS 还包括 NLP 小组。 5 z, [! D$ W D% h$ Q7 C
$ R) @/ `/ P) R, @% @" t! h
- V3 y: G. V( w; O' \4 k
输出样例 ! n0 Y+ m# F# a5 T+ W& H: C+ |
. Q, y9 W2 a$ B# |! K: x7 G, C百度的部门包括门户搜索部,产品市场部,人力资源部,产品推广部,市场发展部等等,其中门户搜索部还包括自然语言处理小组。% V/ v9 M. D% {+ q7 A# ~1 I2 L
6 U( o1 P4 N5 M6 `# V
M7 K9 y: u1 e9 S& g
/ L$ s, a. q+ }( w3 s1 }
2 P! ]1 r. C6 u1 E4 l- G0 C注意: % \% S8 n1 h; V+ j8 P/ Q4 ~+ o4 Z# i1 R
% d1 @) d% V/ _( y
1 . 输入数据中是中英文混合的,中文采用 GBK 编码。 8 {, h) p% c% P; ?7 X) c
+ d# U7 p; }/ T8 |2 . 为保证答案的唯一性,缩率语的转换采用正向最大匹配(从左到右为正方向)的原则。请注意输入例子中 PMD 的翻译。
: M g% U1 K0 J2 E+ H' p3 K# y- q+ r+ Y7 a2 I9 s
9 U: Y. {) X$ G% s
example1:#include<iostream>
- ?7 a( x/ F( q4 p+ |* M#include<string>
. }8 S1 o! ^ I! ?2 J: L5 I2 Musing namespace std;6 E( i: I. f, k/ S2 i- H# l6 ~8 u
int main()" t; p/ x) }$ q5 e7 E
{string a;
7 p" F6 z' j4 [& M- N. n2 @cin>>a;8 B; E( x# w4 w
- v" m/ O+ v. k( M2 yif (a=="PS") cout<<"门户搜索部";' W. r/ r4 }- _
if ( a=="NL")cout<<"自然语言处理";
7 W: ^1 i( R3 ?3 ]; Kif (a== "PM")cout<<"产品市场部";
. g& R }2 r, G, d3 bif (a== "HR")cout<<"人力资源部";
5 H8 {1 B$ ? }$ y M i& tif (a=="PMD")cout<<"产品推广部";
; u4 }3 f' }4 j3 c$ yif (a=="MD") cout<<"市场发展部";
- J# t% {7 J# c& t" a7 q3 J& ?4 o1 |else cout<<"no";
2 U# @! M( \8 X2 M
, y1 X# e; [9 c zreturn 0;/ h+ o: |0 b$ b, }/ }
}
8 Q- X$ T# K* k* X7 _4 Nexample2:#include<iostream>4 T2 E6 X- N- s( E$ Q* W5 S
using namespace std;
8 ~+ F# V, P/ e/ p4 e! dint main()
. s$ E) b4 {# G: A) e/ i/ y( j{string a;; W9 q5 a0 J& l4 w/ S# s) y* ~: b
cin>>a;% Z6 [+ W1 k( V( o* i
switch(a)1 @5 @3 Z! _3 O1 r' E# k7 p% g: w, e
{case 'PS':cout<<"门户搜索部";5 ~2 F. ?: `- {! {. V
case 'NLP':cout<<"自然语言处理";, N! a9 z, k7 G
case 'PM':cout<<"产品市场部";$ C8 I2 Q* D* P, \ v0 I
case 'HR':cout<<"人力资源部";
! M3 b3 m' [+ s+ ncase 'PMD':cout<<"产品推广部";' g2 E5 s& Q( T5 f* ~
case 'MD':cout<<"市场发展部";
5 g/ S1 c, t* [default:cout<<"error";
9 d# J: Q4 s2 w, [& `}
+ A, x9 p; Z* b8 }return o;1 H. Z6 R, w; J
}example3:#include<iostream>9 W. w4 M5 s6 e# j
using namespace std;8 A; H' Z" s& m1 [
int main() A( J+ p: V% J: v
{string a;
4 _0 M) h7 p2 x) q' }2 s kcin>>a;/ r3 J( R* i1 t
switch(a); H' p c5 W! N, B5 G( q
{case 'PS':cout<<"门户搜索部";
) _# C- V9 L1 l- ]% Ccase 'NLP':cout<<"自然语言处理";$ `9 s2 s" k7 |
case 'PM':cout<<"产品市场部";4 c" z9 h& p& \1 v7 K0 T
case 'HR':cout<<"人力资源部";: ~1 o3 K, ]9 ?
case 'PMD':cout<<"产品推广部";, w' O" w5 E6 t8 s2 t2 ]: `
case 'MD':cout<<"市场发展部";4 \9 _7 ?; d" K" ]8 U6 k
default:cout<<"error";# I8 U o7 [! m4 D9 b# p/ j# z* l
}
: V$ F! m3 N. b% p; Y# sreturn o;1 q4 ~" d* W/ X" Z% ?/ `. U
} |