Professional Documents
Culture Documents
1
2 4i cc x
i
&o t, nhp 4o!
H:gin
6h,Np VnW
i SC
[ Sf
6h,Np Vx
i
W
Zn&
i SiUC
[ S[Ux
i
i cSn
Xu,Yt V[W
[
d
III. CC NG#N NG1 LP TRNH 2 CH 3NG TRNH 45CH:
III.1. 9g5n ng: %6 tr8nh :
III.1.1. ;ii thiu: Mon ngBi mu.n gi,o tip 4i my tAnh
phi th"ng qu, ng"n ng8! Mon ngBi mu.n my tAnh th*c hi+n
c"ng 4i+c2 phi 4it cc yPu c9u , cho my bng ng"n ng8
my hiu c! Qi+c 4it cc yPu c9u t, gNi l lp t/0nh
Vp/og/,mmingW! 6g"n ng8 &7ng lp t/0nh c gNi l ng"n
ng8 lp t/0nh!
6u ng"n ng8 lp t/0nh g9n 4i 45n L c9n gii quyt2
g9n 4i ng"n ng8 t* nhiPn th0 4i+c lp t/0nh -n )n gin h)n
nhiLu! 6h8ng ng"n ng8 lp t/0nh c tAnh ch5t nh t/Pn c gNi
l ng"n ng8 c5p c,o! 6hng my tAnh ch# hiu c ng"n ng8
/iPng cK, m0nh2 l cc chuoi -. f 4i C 4 nh 4y /p /ng l
kh khqn cho lp t/0nh 4iPn2 40 n kh"ng g9n g3i 4i con ngBi!
ri+n t'i2 ng"n ng8 lp t/0nh c chi, /, lm cc lo'i -,u=
s
K thut lp trnh
III.1.. #h$n %oi ng5n ng: %6 tr8nh:
( 6g"n ng8 my Vm,chin: l,ngu,g:W
( rp ng8 V,--:mbly l,ngu,g:W
( 6g"n ng8 c5p c,o Vhigh:/(l:4:l l,ngu,g:W
Fo my tAnh ch# hiu c ng"n ng8 my2 cho nPn mt ch(
)ng t/0nh 4it t/ong ng"n ng8 c5p c,o phi c biPn &ch
-,ng ng"n ng8 my! M"ng c$ th*c hi+n 4i+c biPn &ch c
gNi l ch)ng t/0nh &ch!
III.. Ch <ng tr8nh !=ch:
Mh)ng t/0nh &ch c chi, /, lm T lo'i = t/0nh biPn &ch
Vcompil:/W 4 t/0nh th"ng &ch Vint:/p/:t:/W
III..1. Tr8nh 1i*n !=ch: l 4i+c chuyn mt ch)ng
t/0nh t/ong ng"n ng8 c5p c,o no Vch)ng t/0nh ngu@nW
-,ng ng"n ng8 my Vch)ng t/0nh AchW!
( ThBi gi,n chuyn mt ch)ng t/0nh ngu@n -,ng ch)ng
t/0nh Ach c gNi l thBi gi,n &ch!
( ThBi gi,n m ch)ng t/0nh Ach th*c thi c gNi l thBi
gi,n th*c thi!
6h 4y2 ch)ng t/0nh ngu@n 4 &8 li+u ch)ng t/0nh
th*c thi c xt lu t/ong cc thBi im khc nh,u2 c gNi l thBi
gi,n &ch Vcompil: tim:W 4 thBi gi,n th*c thi V/un(tim:W
Mht$ng t/vnh
nguoln
T/vnh bi:pn
&3ch
Mht$ng t/vnh
Kch
O,*y tnh
tht7c hi:Nn
D:Yt qu,w
Ftxli:Nu
r0nh y!C! Mh)ng t/0nh th*c thi th:o c) ch &ch cK, t/0nh
biPn &ch
III... Tr8nh th5ng !=ch: qu t/0nh &ch 4 th*c thi
xy /, c7ng C thBi gi,n2 &ch n <u thi hnh l+nh n !
z
K thut lp trnh
Mht$ng t/vnh
nguoln
Mht$ng t/vnh
thopng &3ch
D:Yt qu,w
Ftxli:Nu
r0nh y!T! Mh)ng t/0nh th*c thi th:o c) ch &ch cK, t/0nh
th"ng &ch
{
K thut lp trnh
CH3NG L6" 789N V:I NG#N NG1 C
; Gi:i thiu n'#n n'1 C
6g"n ng8 M &o F:nni- `itchi: l ngBi 9u tiPn L xu5t2
| thit k 4 ci >t M t/ong m"i t/Bng }6yX! 6 c ngu@n
g.c tx ng"n ng8 HMi? &o O,/tin `ich,/&- , /, 4o nqm C~sz
4 ng"n ng8 H &o D:n Thomp-on pht t/in tx ng"n ng8 HMi?
nqm C~zf khi 4it h+ iLu hnh }nix!
M l ng"n ng8 lp t/0nh , &$ng2 c5p c,o nhng l'i c kh
nqng th*c hi+n cc th,o tc nh cK, ng"n ng8 R--:mbly! Q0 th
ng"n ng8 M nh,nh chng c ci >t2 -t &$ng t/Pn my 4i
tAnh 4 | t/E thnh mt c"ng c$ lp t/0nh kh m'nh2 hi+n n,y
,ng c khuynh hng t/E thnh mt ng"n ng8 lp t/0nh chAnh
cho my 4i tAnh t/Pn th gii!
; <= )i>m n'#n n'1 C
6g"n ng8 M c nh8ng >c im c) bn -,u =
( TAnh c" Nng Vcomp,ctW = 6g"n ng8 M ch# c gT tx kho
chun2 kf ton tt chun m h9u ht c biu &in bEi cc &|y
ku t* ngn gNn!
( TAnh c5u t/;c V-t/uctu/:&W = 6g"n ng8 M c mt tp hp
cc pht biu lp t/0nh c5u t/;c nh pht biu quyt nh
ho>c l>p! Fo 2 n cho php ch;ng t, 4it ch)ng t/0nh c
t1 chJc 4 & hiu!
( TAnh t )ng thAch Vcomp,ct,bl:W = 6g"n ng8 M c b l+nh
tiLn xt lu 4 cc th 4i+n chun lm cho cc ch)ng t/0nh 4it
bng ng"n ng8 M c th t)ng thAch khi chuyn tx my tAnh
ny -,ng my tAnh kiu hon ton khc!
( TAnh linh ng V:xibl:W = 6g"n ng8 M l mt ng"n ng8
/5t linh ng 4L ng8 php2 n c th ch5p nhn /5t nhiLu cch
th hi+n m kh"ng c E ng"n ng8 khc nh i,-c,l2 n gi;p cho
kAch thc m| l+nh c th thu gNn l'i ch)ng t/0nh th*c thi
nh,nh chng h)n!
( HiPn &ch = 6g"n ng8 M c biPn &ch bng nhiLu bc 4
cho php biPn &ch nhiLu tp tin ch)ng t/0nh /iPng /n thnh
cc tp tin .i tng Vob:ctW 4 n.i cc .i tng l'i 4i nh,u
~
K thut lp trnh
VlinkW thnh mt ch)ng t/0nh th*c thi th.ng nh5t!
I. CC KHI NI" C3 ?$N
I.1. Cu tr>c c< 1?n ca m,t ch <ng tr8nh C
tiLn xt lu
Mc hm
4oi& m,inVW
kh,i bo bin\
nhp &8 li+u \
xt lu \
xu5t \
4oi& m,inVW
int n2nT2ng2nk2nm\ ^aDh,i bo bin kiu nguyPna^
o/ VnSCf\ncSmf\nUUW ^a?>p tx Cf n mf bng o/a^
nTS luythu,Vn2TW\ ^aeNi hm luythu,a^
ngS luythu,Vn2gW\
nkS luythu,Vn2kW\
nmS luythu,Vn2mW\
p/intVg& t m!T t m!Tt m!Tt m!Tt m!Tn2
n2nT2ng2nk2nmW\ ^ain n 4 n
m
&'ng m ch8 -. 4i T -. l a^
^art m,ina^
; H6m EuFt =huGn HIintJKL
C> 6h6 =
HIintJVchuoi(nh&'ng2th,m-oC2th,m-oT2!!!W
) ngh@a =
CT
K thut lp trnh
rm p/intVW -n x:m xt chuoi(nh&'ng2 l5y gi t/ cc
th,m -. Vnu c9nW >t 4o th:o yPu c9u cK, chuoi(
nh&'ng 4 gEi /, thit b chun!
Mhuoi(nh&'ng l mt chuoi ku t*2 t/ong c nh8ng ku
t* xu5t /, nguyPn 4dn ho>c xu5t E &'ng >c bi+t2 4 c
th c nh8ng chuoi iLu khin c9n l5y gi t/ cK, cc
th,m -. th,y 4o khi in /,!
( 9h:ng () tA c 1it :
K. tM T= CDn' "N OPCII
n Xu.ng hng mi Cf
t T,b ~
b X, ku t* bPn t/i {
/ Mon t/Y t/E 4L 9u hng Cg
[,ng t/,ng CT
, iht ting c%i z
Xu5t &5u cho ngc ~T
j Xu5t &5u nhy )n h g~
jj Xu5t &5u nhy kp gk
x&& Xu5t ku t* c m| R[Myy &'ng
r:x l &&
&&& Xu5t ku t* c m| R[Myy &'ng
F:c l &&&
f Du t* 6}?? f
B ChuCi =nh !ng :
,g]i&th!p/:c6hl typ:
TQHR = nh kiu cK, th,m -. th:o -,u chuoi(nh&'ng
l5y gi t/ /,
TQHR . n'h/0
&2i [. nguyPn c) -. Cf
u [. nguyPn c) -. Cf kh"ng &5u
o [. nguyPn c) -. {
x [. nguyPn c) -. Cs2 ch8 thBngV,2b2!!!2W
Cg
K thut lp trnh
X [. nguyPn c) -. Cs2 ch8 in VR2H2!!!2W
[. th*c &'ng (&&&&!&&&!!!
: [. th*c &'ng (&!&&& :U^(&&&
Z [. th*c &'ng (&!&&& ZU^(&&&
g2e [. th*c &'ng :VZW h,y t7y th:o
chAnh xc
c Du t*
- Mhuoi ku t* tn c7ng bng hfj
F5u c9n in
Ck
K thut lp trnh
S(0' = F'ng iLu ch#nh
S(0' . n'h/0
nu kh"ng c in &8 li+u /, 4i c,nh phi
( in &8 li+u /, 4i c,nh t/i
U ?u"n bt 9u -. bng U h,y (
in /, t7y th:o typ:2 nu=
f = Mhn thPm f Jng t/c gi t/ bf
x2X = Mhn thPm fx h,y fX Jng t/c -.
ny
:2Z2 = ?u"n lu"n c &5u ch5m thp ph<n
e2g = 6h t/Pn nhng kh"ng c -. f i -,u
TiCth = nh kAch thc in /,
TiCth . n'h/0
n Fnh At nh5t n ku t* 2 iLn khong t/ng cc
ku t* c%n t/.ng
fn Fnh At nh5t n ku t* 2 iLn -. f cc ku t* c%n
t/.ng
a [. ku t* At nh5t c9n in nm E th,m -. t)ng Jng
PIR= = nh kAch thc ph9n ln in /,
PIR= . n'h/0
kh"ng c chAnh xc nh b0nh thBng
f &2i2o2u2x chAnh xc nh c3
:2Z2 Dh"ng c &5u ch5m thp ph<n
n nhiLu nh5t l n ku t* V-.W
a [. ku t* At nh5t c9n in nm E th,m -. t)ng
Jng
C= =h1 %U Vun' =
Th,m -. l con t/Y x, XXXX=
6 Th,m -. l con t/Y g9n
h Th,m -. l -ho/t int
l Th,m -. l long int V&2i2o2u2x2XW
Cm
K thut lp trnh
&oubl: V:2Z22g2eW
QA &$ C= ch,/ cShRj\
ch,/ -SHlu: moon \
4n' Th#n' V-
t3n' Wn'
XuFt Nhn EYt
c c R /ng C
Tc c R /ng T2 c,nh
phi
(gc c R /ng g2 c,nh t/i
& c sm O| R[Myy cK, hRj
- - Hlu: moon /ng Cf
g- - Hlu: moon 6hiLu ku t* h)n
c9n thit
!s- - Hlu: m MhAnh xc s ku t*
(CC!{- - Hlu: moo MhAnh xc {2 c,nh
t/i
QA &$ T= int i S CTg\
o,t x S f!CTgkmsz{~\
4n' Th#n' V-
t3n' Wn'
XuFt Nhn EYt
& i CTg /ng g
fm& i ffCTg ThPm T -. f
zo i CTg r+ {2 c,nh phi
(~x i zb r+ Cs2 c,nh t/i
c i Du t* c m| R[Myy CTg
(~x i fxzb r+ Cs2 c,nh t/i
Cf!m x f!CTgks /ng Cf2 c m ch8
-. thp ph<n
(CT!m: x C!Tgkmz:(
fC
M,nh t/i2 in /, &i &'ng
kho, hNc
QA &$ g= Qit ch)ng t/0nh in h0nh ch8 nht kp bng cc
ku t* R[Myy
Cs
K thut lp trnh
M~ MF HH
M{ MF HM
4oi& m,inVW
p/intVnxM~xMFxHHW\
p/intVnxM{xMFxHMnW\
Cz
K thut lp trnh
I.. Ki2u !: %iu c< 1?n
I..1. =nh ngh@a:
Diu &8 li+u c) bn l kiu &8 li+u c gi t/ )n2 kh"ng
ph<n chi, c n8, nh -.2 ku t*
I... #h$n %oi:
T+n ,i>u . n'h/0 KB=h
th:=
Phm Ai
ch,/ Du t* C byt:
(CT{ CTz
un-ign:&
ch,/
Du t* kh"ng &5u C byt:
fTmm
un-ign:&
-ho/t
[. nguyPn ngn
kh"ng &5u
T byt:-
fsmmgm
:num [. nguyPn c &5u T byt:-
(gTzs{gTzsz
-ho/t int [. nguyPn c &5u T byt:-
(gTzs{gTzsz
int [. nguyPn c &5u T byt:-
(gTzs{gTzsz
un-ign:&
int
[. nguyPn kh"ng &5u T byt:-
f smmgm
long [. nguyPn &i c
&5u
k byt:- (TCkzk{gsk{
TCkzk{gskz
un-ign:&
long
[. nguyPn &i kh"ng
&5u
k byt:-
fkT~k~szT~m
o,t [. th*c chAnh
xc )n
k byt:-
g!k Z(g{g!k
ZUg{
&oubl: [. th*c chAnh
xc kp
{ byt:-
C!z Z(gf{ C!z
ZUgf{
long &oubl: [. th*c chAnh
xc h)n &oubl:
Cf
byt:-
g!k Z(k~gT
C!C ZUk~gT
Ch =
C! 6g"n ng8 M kh"ng c kiu logic Vbool:,n nh i,-c,lW m
qu,n ni+m
f l ,l-: \ Dhc f l t/u:
T! 6g"n ng8 M kh"ng c kiu chuoi nh kiu -t/ing t/ong
i,-c,l
C{
K thut lp trnh
g! Mc kiu @ng nh5t=
int S -ho/t int S -ho/t S -ign:& int S -ign:& -ho/t int
long int S long
-ign:& long int S long
un-ign:& int S un-ign:& S un-ign:& -ho/t S
un-ign:& -ho/t int
un-ign:& long int S un-ign:& long
C~
K thut lp trnh
I.!. DiEn
I.!.1. T*n 1iEn = TPn bin l mt chuoi ku t* bt 9u
bng ku t* ch82 ku t* k tip l ku t* ch8 V&5u g'ch &i c
x:m l ku t* ch8W ho>c -. 4 kh"ng c t/7ng 4i cc tx kh,
cK, M!
Ch = ( 6g"n ng8 M ph<n bi+t ch8 thBng 4i ch8 ho, nPn
bin ch8 thBng 4i ch8 ho, l khc nh,u!
QA &$ = Hi:nC bi:nT l hp l+
bi:n T, , b l kh"ng hp l+
( 6g"n ng8 M ch# ph<n bi+t h,i tPn hp l+ 4i nh,u bng n
ku t* 9u tiPn cK, ch;ng! Th"ng thBng nS{2 nhng hi+n n,y
nhiLu ch)ng t/0nh &ch cho php nSgT2 nh Tu/bo M cho php
th,y 1i -. ku t* ph<n bi+t tx {(gTW
QA &$ = r,i bin -,u b x:m l c7ng tPn
bi:nt:n&,ihongTkytu&,uti:nC
bi:nt:n&,ihongTkytu&,uti:nT
I.!.. Khai 1o 1iEn
Mc bin phi c kh,i bo t/c khi -t &$ng nhm gi;p cho
ch)ng t/0nh &ch c th xt lu ch;ng!
Dh,i bo bin c &'ng =
Diu&8li+u tPnbinC
2t:nbinT !!! \
QA &$= int ,Sf2bSC2c\
o,t x2y2&:lt,\
ch,/ c\
a Dh,i bo 4 khEi t'o bin=
Diu &8 li+u tPnbin S git/ \
I.!.!. FGm nh6 !: %iu chuHn
a) Hm scanf()
C> 6h6: -c,nVchuoi(nh&'ng2i'ch#th,m-.C2
i'ch#th,m-.T2!!!W
( Mhuoi(nh&'ng cK, -c,nVW g@m c b, lo'i ku t* =
U Mhuoi iLu khin
Tf
K thut lp trnh
U Du t* t/ng
U Du t* khc t/ng
Mhuoi iLu khin c &'ng =
]i&thh^l typ:
Qi tQHR= xc nh kiu cK, bin , ch# th,m -. -n nhn gi
t/ nhp 4o
TQHR . n'h/0
&2i [. nguyPn c) -. Cf VintW
o [. nguyPn c) -. { VintW
u [. nguyPn c) -. Cf kh"ng &5u
Vun-ign:&W
x [. nguyPn c) -. Cs VintW
2: [. th*c Vo,tW
c Du t* Vch,/W
- Mhuoi ku t*
p Mon t/Y Vpoint:/W
l [. th*c V&oubl:W
? [. th*c Vlong &oubl:W
TiCth = xc nh -. ku t* t.i , -n nhn 4o cho 47ng !
rm -c,nVW ch# nhn cho K ]i&th ku t* ho>c cho n
khi g>p ku t* t/ng 9u tiPn! 6u chuoi nhp 4o nhiLu h)n
th0 ph9n c%n l'i -n &nh l'i cho l9n gNi -c,nVW k tip!
QA &$ C= -c,nVg-2-t/W\
6u nhp chuoi RHMFZe
th0 -c,nVW -n nhn t.i , g ku t* c5t 4o mng -t/2 c%n
FZe -n c l5y nu -,u c l9n gNi -,nV-2-t/W khc!
QA &$ T= un-ign:& long mon:y\
-c,nVlu2mon:yW\
L u = 6u -c,nVul2 mon:yW th0 gi t/ nhp 4o -n
kh"ng c lu t/8 t/ong bin mon:y2 nhng ch)ng t/0nh &ch
kh"ng bo loi!
TC
K thut lp trnh
QA &$ g= 6hp 4o tPn 4 b gii h'n t/ong khong R(2,(
ch,/ n,m:Tf\
p/intV6,m: = W \
-c,nVR(,(2n,m:W\
T/ong t/Bng hp ny2 nu t, gp -,i &'ng th0 n,m: S
Du t* t/ng= nu c t/ong chuoi(&'ng -n yPu c9u -c,nVW
bY qu, mt h,y nhiLu ku t* t/ng t/ong chuoi nhp 4o! Du t*
t/ng l ku t* khong t/ng Vh hW2 t,b VhtjW2 xu.ng hng VhnjW!
Ot ku t* t/ng t/ong chuoi(nh&'ng -n c hiu l chB nhp
n ku t* khc t/ng tip th:o!
QA &$ k= -c,nV& 2numW\
rm -c,nVW cho t, nhp mt ku t* khc t/ng n8, th0
mi thot /,! Du t* -n nm t/ong 47ng +m 4 -n c l5y bEi
hm -c,nVW ho>c g:t-VW tip th:o!
Du t* khc t/ng= nu c t/ong chuoi(nh&'ng -n khin
cho -c,nVW nhn 4o ;ng ku t* nh th!
QA &$ m= -c,nV&^&^&2&2m2yW\
rm -c,nVW chB nhn mt -. nguyPn2 c5t 4o &2 k n
l &5u h^j2 bY &5u ny i 4 chB nhn -. nguyPn k tip c5t
4o m! 6u kh"ng g>p &5u h^j k tip -. nguyPn th0 -c,nVW
ch5m &Jt!
Ch = rm -c,nVW %i hYi cc th,m -. phi l cc ,
ch# cK, cc bin ho>c l mt con t/Y!
a Ton tt , ch# = ?5y , ch# cK, mt bin
QA &$ s= int n\ bin n
n\ , ch# cK, n
p/intVt/ S &2 , ch# S &2n2nW\
b) Hm getch():
rm g:tchVW &7ng nhn mt ku t* &o t, nhp t/Pn bn
phAm m kh"ng c9n gp Znt:/ 4i c; php =
ch S g:tchVW\ Dh"ng hi+n ku t* nhp t/Pn
mn h0nh
ch S g:tch:VW\ ri+n ku t* nhp t/Pn mn h0nh
TT
K thut lp trnh
Qi ch l bin kiu ch,/!
QA &$ z=
4oi& m,inVW
ch,/ch\
p/intVeo 4,o ky tu b,t ky = hW\
ch S g:tch:VW\
p/intVn H,n 4u, go c2chW\
g:tchVW\
int c\
int :xt:n&:& S f\
c S g:tchVW\
i VcW
:xt:n&:& S g:tchVW\
i V:xt:n&:&W
p/intVTh: ch,/,ct:/ i- :xt:n&:&nW\
Tg
K thut lp trnh
:l-:
p/intVTh: ch,/,ct:/ i-nt :xt:n&:&nW\
b! 'h(p t)*n m,t t)*n h+ng = php tqng UU2 php gim ((
,UU ho>c UU, , S ,UC
,(( ho>c ((, , S ,(C
Ch = Tuy nhiPn ,UU -n khc UU, khi ch;ng Jng t/ong
biu thJc Vc php gnW!
,UU = Tqng , -,u khi gi t/ cK, n c -t &$ng!
UU, = Tqng , t/c khi gi t/ cK, n c -t &$ng!
QA &$ =
m,inVW 0 % n
int ,Sk 2 bSs2 n\
n S , U b\
n S ,UU U b\
n S UU, U b\
n S ((, U b\
n S ,(( U b\
n S ,U b\
k
k
m
s
m
k
k
s
s
s
s
s
s
s
Cf
Cf
CT
CC
CC
Cf
T{
K thut lp trnh
I.[.[.Ton tM %ogic:
Ton t^ . n'h/0
6T ihK nh
R6F ei,o2 4
` ri
ThJ t* tAnh ton tx t/Pn xu.ng!
Hng ch<n t/=
E _ E E Q E 22
Q
t/u: ,l-: t/u: t/u: t/u:
,l-: t/u: t/u: ,l-: ,l-:
,l-: t/u: ,l-:
,l-: ,l-: ,l-:
E Q E `` Q
t/u: t/u: t/u:
,l-: t/u: t/u:
,l-: t/u: t/u:
,l-: ,l-: ,l-:
QA &$ C= Xt ku t* c c phi l ku -. h,y kh"ng
ch,/ c\
i Vc bS hfj c cS h~jW
p/int V c l kA t* -. 2 cW\
gf
K thut lp trnh
QA &$ T= Xt ku t* ch l ch8 ci h,y kh"ng
i VVchb Sh,jW ,n& Vchc ShjWW o/ VVchb ShRjW ,n& Vchc
ShjWW
p/intVc l chu c,i n2chW\
QA &$ g=
int ,SCf2 bSm2 cSf\
, b C
, c f
, c C
QA &$ k=
int ,SCf2 bSm\
int iST2 Sf\
V,bbW VicW f
V,cbW VibW C
QA &$ m=
nSm\
]hil: VnW
p/intVn[. n S &2nW\
n((\
k! Ton tt cc 2 bb
cc &ch -,ng t/i Vnh<n TW
bb &ch -,ng phi Vchi, TW
QA &$ m= num S TfC Vfxffc~W
num = f f f f f f f f C C f f C f f C
num cc
T =
f f f f f f C C f f C f f C f f
Dt qu S fxfgTk {fk ngh, l TfCa k
gk
K thut lp trnh
QA &$ s=
4oi& m,inVW
un-ign:& ch,/ xC2 xT \
p/int V nhp C -. h:x c S 4 -. bit = W\
-c,n V x & 2 xC2 xTW\
p/int V fTx bb & S fTx n2 xC2 xT2 xCbb
xTW\
p/int V( (W\
m,-k bb C\
plin: VW
p/int V( ( ( ( ( ( ( ( nW\
; PM =huQ>n ,i>u %dt %u@=:
T/ong M c T t/Bng hp chuyn kiu= chuyn kiu t* ng
gz
K thut lp trnh
4 chuyn kiu bt buc!
Mhuyn kiu bt buc= c p &$ng khi chuyn kiu t*
ng kh"ng c!
C> 6h6= VTyp:W biu
thJc
QA &$= & S Vo,tW V ( gTW
int ,S Cff2 bSs\
&oubl: \
S,^b ^^ kt qu SCs
S V&oubl:W ,^ V&oubl:Wb ^^ kt qu S Cff!f ^ s!fS
Cs!sss!
; "W= )@ u ti+n =e0 == HhYH ton:
@ u ti+n PhYH ton ThW tM ,\t
hfH
C
VW
T UU ( ( Vtyp:W a
-i: o
g a ^
k U (
m cc bb
s c cS b
bS
z S S S
{
~
Cf
CC
CT
Cg
Ck S U S ( S
!!
QA &$ C= g^k a s gas ^k
g{
K thut lp trnh
f a s C{ ^k
f k
QA &$ T= Vo,tW T ^k Vo,tW VT^kW
T!f ^k Vo,tW f
f!m f!f
I.a. ChuCi
I.a.1. X=nh ngh@a :Mhuoi l mt mng m cc ph9n tt cK,
n c kiu ku t*!
Dh,i bo mt chuoi ku t* chJ, t.i , k~ ku t*
ch,/ chuoimf\
a L u = T5t c cc chuoi Lu c kt th;c bng ku t* 6}??
VfW! Fo 2 nu chuoi &i mf th0 t, ch# c th chJ, t.i , k~
ku t*!
I.a.. KhYi ,ng tr=:
ch,/ chuoi S hRj2 h6j2 hrj2 h fj\
ch,/ chuoi S R6r\
I.a.!. 9h6 Z [ut chuCi:
a. 9h6 chuCi:
'RtV K=hugiL
1. \ut chuCi:
HutV K=hugiL
Ch> ):
( Dhi nhp chuoi th0 kh"ng c &7ng hm -c,n 40 hm
-c,n kh"ng ch5p nhn khong t/ng!
QA &$= -c,nV-2 chuoiW\ ^^ t, nhp 4o 6guyIn Qqn i th0
^^ chuoi S 6guyIn 40 hm -c,n ct
khong t/ng
( Dhi &7ng hm g:t- t/ong ch)ng t/0nh th0 kh"ng nPn &7ng
hm -c,n E b5t k0 <u &7 /ng &7ng hm -c,n nhp -.
m t, nPn &7ng hm g:t- 4 hm ,toi2 ,to nhp -.!
Q0 =
-c,nV&2 nW\ ^^ t, nhp -. m
g:t- VchuoiW\ ^^ l;c ny chuoi S Vchuoi /ongW
I.a.Z. FGm chu"2n i -. -ang chuCi /G ngLc %i
g~
K thut lp trnh
-.int S ,toi Vchuoi-.W ^^ chuyn chuoi -. -,ng -.
nguyPn
-. S ,to Vchuoi-.W ^^ chuyn chuoi -. -,ng -. th*c
a r,i hm ny nm t/ong c -t&lib !h b
I.a.[. Cc hGm /N chuCi: Kh in=(uCR i VtIin'. hj L
( int VtI(RnKPL = t/ 4L chiLu &i chuoi [!
( int VtI=mHKP1k PL= -o -nh chuoi [C 4i [T! 6u chuoi
[C gi.ng [T kt qu bng f! 6u chuoi [Cc [T kt qu l <m2
nu chuoi [Cb [T kt qu b f!
( int VtIi=mHKP1k PL= -o -nh chuoi [C2 [T kh"ng ph<n
bi+t ch8 thBng h,y ch8 ho,
( int VtIn=mHKP1k Pk nL= ch# -o -nh n ku t* 9u cK, T
chuoi [C2 [T 4i nh,u!
( int VtIni=mHKP1k Pk nL= ch# -o -nh n ku t* 9u cK, T
chuoi [C2 [T 4i nh,u2 kh"ng ph<n bi+t ch8 thBng2 ch8 ho,
( VtI=HQKCRVtk VouI=RL= chp chuoi tx ngu@n -ou/c: -,ng
Ach &:-t
QA &$= ch,/ -t/ingCf\
ch,/ a-t/C S ,bc&:ghi\
-t/cpyV-t/ing2 -t/CW\
p/intV-n2 -t/ingW\ ^^ ,bc&:ghi
( VtIn=HQKCRVtk VouI=Rk nL= chp chuoi tx ngu@n -,ng
Ach 4i nhiLu nh5t l n ku t*!
QA &$=
ch,/ -t/ingCf\
ch,/ a-t/C S ,bc&:ghi\
-t/ncpyV-t/ing2 -t/C2 gW\ ^^ -t/ing S ,bcxC]:CT
-t/ingg S f\ ^^ G>t ku t* kt th;c chuoi 4o cu.i
chuoi!
p/intV-n2 -t/ingW\ ^^ ,bc
( VtI=0tKCRVtk VI=L= n.i chuoi -/c 4o -,u chuoi &:-t!
MhiLu &i cK, chuoi kt qu bng -t/l:nV&:-tW U -t/l:nV-/cW
QA &$=
ch,/ &:-tin,tionTm\
ch,/ abl,nk S 2 ac S MUU2 atu/bo S Tu/bo\
kf
K thut lp trnh
-t/cpyV&:-tin,tion2 tu/boW\ ^^ &:-tin,tion S Tu/bo
-t/c,tV&:-tin,tion2 bl,nkW\ ^^ &:-tin,tion S Tu/bo
-t/c,tV&:-tin,tion2 cW\ ^^ &:-tin,tion S Tu/bo MUU
( VtIn=0tKCRVtk VI=k nL= n.i nhiLu nh5t l n ku t* cK, -/c
4o cu.i chuoi &:-t2 -,u thPm ku t* null 4o cu.i chuoi kt
qu!
QA &$=
ch,/ &:-tin,tionTm\
ch,/ a-ou/c: S [t,t:-\
-t/cpyV&:-tin,tion2 }nit:&W\
-t/nc,tV&:-tin,tion2 -ou/c:2 sW\
p/intV-n2 &:-tin,tionW\ ^^ &:-tin,tion S }nit:&
[t,t:
( =h0I ; VtI=hIKVk =hL= t/ 4L , ch# cK, ku t* ch 9u
tiPn c t/ong chuoi [\ nu kh"ng c th0 t/ 4L 6}?? VthBng
&7ng l5y hNW
QA &$=
ch,/ -t/ingCm\
ch,/ apt/2 c S /\
-t/cpyV-t/ing2 Thi- i- , -t/ingW\
pt/ S -t/ch/V-t/ing2 cW\
i Vpt/W
p/intVDu t* c E 4 t/A= &n2 c2 pt/(-t/ingW\
:l-:
p/intVDh"ng t0m th5y ku t* cn2cW\
( ch,/ ; VtIVtIKP1k PL= t/ 4L 4 t/A cK, chuoi [T t/ong
chuoi [C\ nu [T kh"ng c t/ong [C th0 hm -t/-t/ t/ 4L t/
6}??!
I.a.a. +?ng cc chuCi
]Khai 1o: Dh,i bo bin CV chJ, t.i , mf chuoi ku t*2
moi chuoi ku t* c t.i , gf ku t*!
ch,/ &-mf gf\
Ch =
( Dh"ng nPn gn chuoi 4i chuoi V-CS -TW m phi &7ng
hm -t/cpyV[C2[TW
kC
K thut lp trnh
( Dh"ng c -o -nh T chuoi bng cc ton tt qu,n h+
V[CSS [T2 [Cb[T2 [CbS [TW2 m phi &7ng hm
-t/cmpV[C2[TW!
QA &$= Qit ch)ng t/0nh t0m kim C tx t/ong C c<u
inclu&: c -t/ing!hb
inclu&: c -t&io!hb
4oi& m,in VW
ch,/ c,u{f2 txz2 apt/\
p/intV6hp c<u =W\
g:t-Vc<uW\
p/intV6hp tx =W\
g:t-VtxW\
pt/ S -t/-t/Vc<u2 txW\
i Vpt/ SS 6}??W p/intVDh"ng c txW\
:l-: p/intVc txW\
un-ign:&ch,/ ch\
int k\
cl/-c/VW\
p/intV6h,p C ky tu -o h:x = W\
chSg:tch:VW\
-]itch VchW
c,-: f=
c,-: C=
c,-: T=
c,-: g=
c,-: k=
c,-: m=
c,-: s=
c,-: z=
c,-: {=
c,-: ~= kSch(f\ b/:,k\
km
K thut lp trnh
c,-: R=
c,-: H=
c,-: M=
c,-: F=
c,-: Z=
c,-: =kSch(RUCf\ b/:,k\
c,-: ,=
c,-: b=
c,-: c=
c,-: &=
c,-: :=
c,-: = kS ch(,UCf\ b/:,k\
&:,ult= kSf\
II.!. Cu tr>c %6
II.!.1. &nh Phi%Q=
C> 6h6:
hil: VbtW
[\
dD
6
Z[
[
Ch = T/ong ph9n th<n l+nh phi c bin iLu khin
4%ng l>p!
QA &$ C= Qit ch)ng t/0nh in /, bng m| R[Myy
4oi& m,in VW
int nSf\
]hil: Vn cS TmmW
p/intVc c m| R[Myy l &2 n2 nW\
n UU
b UU\
p/intVnW\
II.!.. &nh !o Phi%Q:
C> 6h6=
&o
[
]hil: VbtW\
[
Kk
6o
:-
QA &$ C= Qit ch)ng t/0nh in bng m| R[Myy
inclu&: c-t&io!hb
m,in VW
int nSf\
&o
p/intVc c m| R[Myy &n2 n2 nW\
n UU\
]hil: Vn cS TmmW\
,xUby S
c
,jxUbjy S
cj
r ng &n=
F S , b
,j bj
S ,bj (
,jb
FxS c b
cj bj
S cbj (
cjb
FyS , c
,j cj
S ,cj (
,jc
i FS f xS Fx^F\ yS Fy^ F
:l-: i VV Fx S fW V Fy S fWW pt 4" nghi+m
:l-: pt 4" nh
Tk! eii h+ ph)ng t/0nh g n -. bc nh5t
,
C
x U b
C
y U c
C
S
&
C
,
T
x U b
T
y U c
T
S
&
T
,
g
x U b
g
y U c
g
S
&
g
Tm! Qit ch)ng t/0nh gii ph)ng t/0nh t/7ng ph)ng ,x
k
U bx
T
U c S f
Ts! 6gBi t, mu.n lp h, )n cho khch hng cK, M"ng ty
i+n l*c! Mh# -. 9u 4 ch# -. cu.i k -n c cho bit! Hit
/ng biu gi c tAnh t7y th:o i+n nqng tiPu th$!
( 6u i+n nqng tiPu th$ nhY h)n CffD]h2 gi moi D]h l
mff!
( 6u i+n nqng tiPu th$ tx CffD]h t/E lPn2 th0 moi D]h
mg
K thut lp trnh
&"i /, -n c tAnh gi l {ff
( ihA khu 4*c l mfff cho moi khch hng! Qit ch)ng
t/0nh tAnh tiLn phi t/ t1ng cng g@m tiLn i+n2 4 phA
khu 4*c
Tz! Hit T -. X2 biu &in thBi gi,n tAnh th:o gi<y! 6gBi t,
mu.n 4it ch)ng t/0nh =
( GNc T -. ny 4 in /, t1ng cK, ch;ng
( Mhuyn cc -. ny 4 t1ng /, &'ng giB2 ph;t2 gi<y cK,
ch;ng /@i in /,! Dim x:m kt qu cK, T cch tAnh c nh
nh,u kh"ng
T{! Qit ch)ng t/0nh in bng ctu ch)ng tx T ~ th:o hng
ng,ng
T~! yn t,m gic a2 h0nh ch8 nht a2 /ong ( >c
gf! Qn lu @ 4 4it ch)ng t/0nh tAnh =
,!
CUTU!!!Un
b!
CUgUmU!!!UTn(C
c!
TUkUsU!!!UTn
&!
C
T
U T
T
U g
T
U!!!Un
T
:!
C^CU C^TU C^gU!!!U C^n
!
TUkU{U!!!UT
n
g!
CU C^T
T
U C^g
T
U!!!!U C^n
T
gC! Mho :p-ilon S f!fffffC2 xc nh cc t1ng -,u <y
-,o cho -. h'ng cu.i c7ng cK, t1ng l kh"ng ng k V-.
h'ng cu.i c7ng c :p-ilon W
,! C^CU C^TU C^gUC^kU!!!!!
b! CU C^T
T
U C^g
T
U!!!!U!!!
gT! Qit ch)ng t/0nh in /, bng m| R[Myy2 Cs ku t* t/Pn C
&%ng!
gg! Qn lu @ 4 4it ch)ng t/0nh =
,!Xt mt -. c phi l -. nguyPn t. h,y kh"ng
b!yn t/Pn mn h0nh Cff -. nguyPn t. 9u tiPn
gk! Qit ch)ng t/0nh cho php mt ku t* ngu nhiPn /)i t/Pn
mn h0nh! 6u ngBi -t &$ng kh"ng kp 5n phAm t)ng Jng
mk
K thut lp trnh
4 ch'm y mn h0nh th0 thu, cuc!
gm! Mho hm ibon,cci=
n
S
{
C \ nSf2C
n(C
U
n(T
\ nbST
,! T0m
n
2 4i n &o t, nhp
b! yn /, 6 ph9n tt 9u tiPn cK, &|y ibon,cci
gs! Qit ch)ng t/0nh Nc 4o -. nguyPn 6 4 in /, CaTaga!!a6
cho n khi 6 cSf!
gz! Mho C &|y g@m mt t/i+u tx gT bit2 h|y m -. bit C t/ong
moi tx!
g{! Qit ch)ng t/0nh on -. = ngBi ch)i -n on C -. t/ong
ph'm 4i tx f n Cff2 t.i , m l9n! Mh)ng t/0nh kim t/,
kt qu 4 xu5t th"ng bo hng &n=
( [. b'n on ln h)n
( [. b'n on nhY h)n
( H'n on ;ng
( Oy thng cuc
mm
K thut lp trnh
III. H6m n ]uQ:
III.1. FGm:
III.1.1. +0c ch: rm l mt ch)ng t/0nh con cK, ch(
)ng t/0nh chAnh2 4i cc m$c Ach -,u=
a T/nh 4i+c l>p i l>p l'i cc o'n ch)ng t/0nh gi.ng
nh,u2 nhB 2 t, -n tit ki+m l;c lp t/0nh!
a T1 chJc ch)ng t/0nh= F7ng hm t, -n ph<n mnh ch(
)ng t/0nh thnh nh8ng kh.i nhY c lp2 moi kh.i l mt hm
th*c hi+n mt c"ng 4i+c no ! Txng hm -n c lp t/0nh2
kim t/, hon ch#nh\ [,u 2 t, kt l'i t'o ch)ng t/0nh
hon ch#nh! 6hB 4y2 ch)ng t/0nh 4L -,u & hiu 4 & -8,!
a TAnh c lp= cho php hm c lp 4i ch)ng t/0nh
chAnh! QA &$ hm c nh8ng bin c$c b m ch)ng t/0nh
chAnh 4 cc hm khc kh"ng th $ng ti! Fo 2 nu t, c
kh,i bo cc bin t/7ng tPn 4i cc hm khc th0 c3ng kh"ng -
nh hEng ti cc bin t/7ng tPn !
Ch> )=
( M kh"ng cho php cc hm l@ng nh,u ngh, l cc hm
Lu ng,ng c5p nh,u Vc th gNi ln nh,uW!
( M kh"ng ph<n bi+t thK t$c h,y hm2 m ch# qu,n t<m
n kt qu t/ 4L cK, hm! 6u hm kh"ng t/ 4L kt qu
g0 c th0 c th x:m l thK t$c!
QA &$= Qn h0nh ch8 nht >c bng &5u haj=
inclu&: c-t&io!hb
inclu&: cconio!hb
4oi& 4:hcnVint &2int /W ^^ kh,i bo 4oi& cho bit hm
kh"ng t/ 4L t/ no c
int i2 \ ^^ i2 l T bin c$c b t/ong hm 4:hcn
o/ ViSC\icS/\iUUW
o/ VSC\cS&\ UUW
p/intVaW\
p/intVnW\
4oi& m,inVW
ms
K thut lp trnh
int &STf2 /Sm\
cl/-c/VW\
4:hcnV&2/W\ ^^ lBi gNi hm
g:tchVW\
4oi& m,inVW
ch,/ ch\
p/intVn6h,p 4,o ky tu b,t ky W\
chSg:tch:VW\
p/intVnDy tu c qu, h,m e:tupp:/ t/o th,nh
c2ch2e:tupp:/VchWW\
g:tchVW\
mz
K thut lp trnh
L u :
( r'n ch cK, l+nh /:tu/n l ch# t/ 4L mt kt qu!
( ?+nh /:tu/n kh"ng nh5t thit phi E cu.i hm! 6 c th
xu5t hi+n E b5t k n)i no t/ong hm! Dhi g>p l+nh
/:tu/n2 quyLn iLu khin -n chuyn ng,y 4L ch)ng t/0nh
gNi!
III.1.!. Cc %oi tru"Nn .i -.
,! -ru./n the) tr0
inclu&: c-t&io!hb
inclu&: cconio!hb
int m,x Vint ,2int bW
int mS ,bb,=b\
,S,aCff\
bSbaCff\
/:tu/n m\
4oi& m,inVW
int ,2b2c\
cl/-c/VW\
p/intVnMhuong t/inh tim O,xV,2bWnW\
p/intV6h,p , b = W\
-c,nV& &2,2bW\
cSm,xV,2bW\
p/intVnei, t/i lon nh,t S&2cW\
p/intVnei, t/i , S&2,W\
p/intVnei, t/i b S&2bW\
g:tchVW\
4oi& m,inVW
int ,2b2c\
cl/-c/VW\
p/intVnMhuong t/inh tim O,xV,2bWnW\
p/intV6h,p , b = W\
-c,nV& &2,2bW\
=rm0EK0k%Lm ^^ , l th,m -. th*c
bin
p/intVnei, t/i lon nh,t S&2cW\
p/intVnei, t/i , S&2,W\
p/intVnei, t/i b S&2bW\
g:tchVW\
4oi& m,inVW
int ,2b\
p/int V,2 b S W\
-c,n V& &2 ,2 bW\
gi,oho,nV,2 bW\
a T/uyLn .i -. l mng gNihm Vm,ngW
hm Vkiu m,ngW ho>c hmVkiu
am,ngW
QA &$= Mng thPm mt hng -. 4o mng tPn l &,y-o!
&:n: [yZ m ^^ &|y -. c m -.
inclu&: c-t&io!hb
inclu&: cconio!hb
4oi& ,&&con-tVint a,2 int n2 int conW ^^ int a, int ,
o/ Vint iSf\ icn\ iUUW
a, S aV,UUW U con\
sf
K thut lp trnh
4oi& m,inVW
int &,y-o [yZ S g2m2z2~2CC\
int kon-t S Cf\
,&&con-tV&,y-o2 [yZ2 kon-tW\
p/intVnF,y -o -,u khi cong th:m h,ng -o =W\
o/ Vint iSf\ ic[yZ\ iUUW
p/intV& 2 aV&,y-oUiWW\ ^^ aV&,y-oUiW &,y-oi
g:tchVW\
4oi& m,inVW
o,t , 2b2 ,C2 bC\
p/intV6h,p ,2b2,C2bC=W\
-c,nV 2,2b2,C2bCW\
p/intVFinh thuc S 2&inhthucV,2b2,C2bCW\
g:tchVW\
n
S
C \ n Sf2C
n(C
U
n(T
\ nbC
( Th:o nh ngh, t/Pn2 hm ibon,cci c lBi gNi + qui!
( _u t/0nh tAnh &xng l'i khi nS C
yyy!T!T! FGm qui trong ng5n ng: C:
6g"n ng8 M c t/,ng b c) ch gNi hm + qui! rm +
qui l hm gNi n chAnh hm mt cch t/*c tip h,y gin
tip!
QA &$ C= Qit hm + qui tAnh [VnW S C U T U g U!!!Un
inclu&: c-t&io!hb
inclu&: cconio!hb
int [Vint nW
i VnSSCW ^^ iLu ki+n &xng
/:tu/n C\
:l-: ^^ bc + qui
/:tu/n V[Vn(CW U nW\
4oi& m,inVW
int n\
p/intVn 6h,p n S W\
-c,nV&2nW\
p/intVTong [ S C U T U !!!U & S &2n2 [VnWW\
g:tchVW\
RVW
!!!!!\
MVW\
!!!!\
FVW\
HVW
!!!!!\
FVW\
MVW
!!!!!!\
FVW\
!!!!!\
FVW
!!!!!!!!\
!!!!!!!!\
s{
K thut lp trnh
T/ong t/Bng hp ny2 t/uy xu5t ti thng -inh cK, hNc
4iPn h42 t, 4it nh -,u= hA.n'Vinh.th0n'.
V. SIL9:
V.1. fi%Q /gn 1?n :
( il: 4qn bn l l: c lu t/8 &i &'ng kiu ku t*
M T cch t/uy xu5t th:o kiu ku t*!
( T/uy xu5t th:o txng ku t*
( T/uy xu5t th:o txng &%ng
V.1.1. Khai 1o t6 tin:
Dh,i bo bin kiu l:=
y?Z apt/
V.1.. +Y t6 tin:
pt/ S op:n VtPn l:2 kiuW\
( T/ong tPnl: 2 t, c th ch# nh mt Bng &n 9y
K nh -,u M=Tr}DT?TQyF}!TXT! rm op:n nu mE l:
thnh c"ng -n t/ 4L mt con t/Y l: cho tp tin tPn l:2 4
con t/Y ny c c5t gi8 t/ong bin pt/ Vbin kiu y?ZW!
6u kh"ng c l: tPn l: t/Pn &, th0 hm op:n -n t/
4L t/ 6}??
V nu pt/ SS 6}?? ngh, l kh"ng c l: W
( Diu= g@m c=
/ = Nc V l: phi c -n2 nu kh"ng c l:2 hm
op:n t/ 4L t/ 6}??W
] = ghi V nu c l: -n x, l: c3 W
, = n.i 4o cu.i tp tin
/ U= Nc ^ ghi2 tp tin phi c -n t/Pn &,
,U= Nc2 ghi 4o cu.i tp tin2 nu t/Pn &, ch, c tp
tin th0 n -n c t'o /,!
QA &$= Gm -. ku t* t/ong l: QH!TXT!
inclu&: c-t&io!hb
inclu&: cconio!hb
inclu&: c-t&lib!hb
4oi& m,inVW
s~
K thut lp trnh
y?Z apt/\
int &:mSf\
ch,/ ch\
i VVpt/ S op:nVQH!txt2 /WW SS 6}??W ^^ mE l:
Nc
p/intVil: n,y khong th: monW\
/:turn \ ^^ (Et th>c ch<ng tr8nhh hGm Q[it thu,c
/N -t!%i1.h
]hil: V:oVpt/WW
chSg:tcVpt/W\ ^^ Nc C ku t* t/ong l: pt/ /,
&:mUU\
clo-:Vpt/W\
p/intVn[o ky tu t/ong l: QH!TXT S&2&:mW\
g:tchVW\
zC
K thut lp trnh
QA &$ g= Mh)ng t/0nh m -. tx t/ong l:
inclu&: c-t&io!hb
inclu&: cconio!hb
inclu&: c-t&lib!hb
4oi& m,inVW
y?Z apt/\
ch,/ t:nl:sz\
int ch\
int &:mSf2 tuSf\
cl/-c/VW\
p/intVMho bi:t t:n l: =W\
g:t-Vt:nl:W\
i VVpt/Sop:nVt:nl:2/WWSS6}??W ^^ mE l: Nc
p/intVQi:c mo l: co loinW\
:xitVfW\
]hil: VVchSg:tcVpt/WW SZW
i VVchbS, ch cSW VchbSR chcSWW
tuSC\
i VVchSS chSSn chSStW tuW
&:mUU\
tuSf\
p/intV[o tu t/ong l: S&2&:mW\
clo-:Vpt/W\
y?Z ap\
p S op:nVp://o/!&,t2 /W\
{f
K thut lp trnh
i VpW
p://o/VDh"ng th mE l: NcW\
QA &$ T=
m,inVW
-t,tic int O SCf2TT2gf\
!!!!!!!!!!!!
{s
K thut lp trnh
AoiC LiRt,RCV V-t/uct &,nh-,ch-4 ap-4W
int iSf\
cl/-c/VW\
p/int V O, -o ro t:n nW\
]hil: Vi c p-4(bt--4W
p/int V{- (-n2 p-4(b-4i!m,-o2p-4(
b-4i!hot:nW\
iUU\
g:tchVW\
AoiC m0inVW
-t/uct &,nh-,ch-4 &-\
ch,/ m,-os\
int 4it/i\
6h,p&-V&-W\ ^^ eNi hm 6h,p&- 4i th,m -. l
&-
?i:tk:&-V&-W\
p/intVO, -o -inh 4i:n b,n c,n tim =W\
g:t-Vm,-oW\
4it/i S Timki:mV&-2 m,-oW\
i V4it/i S(CW
p/intVro t:n cu, -inh 4i:n l, -2&-!-44it/i!hot:nW\
:l-: p/intV Dhong co -inh 4i:n 4oi m, b,n nh,p 4,oW\
g:tchVW\
{z
K thut lp trnh
II. C= thut ton VdH E\H:
T/ong th*c t cuc -.ng c3ng nh t/ong lnh 4*c lp t/0nh2
4i+c qun l &8 li+u thBng %i hYi -* t0m kim cc &8 li+u
c9n thit\ G thun ti+n cho 4i+c t0m kim2 &8 li+u thBng c
-p xp th:o mt thJ t* no !
M /5t nhiLu ph)ng php -p thJ t*2 t/ong bi ging ny t,
ch# kho -t h,i ph)ng php -p xp l Hubbl:[o/t 4
_uick[o/t!
G thun ti+n t, gi -t mng l &|y -. c t.i , Cff -.2 4
cc thut ton &i <y &7ng -p xp &|y -. th:o thJ t*
tqng &9n!
II.1. ej6 [E6 thQo 6h <ng 6h6 Du11%Q`eort KHh3n'
HhH nUi %ptL
( 6i &ung = T, cho i &uy+t &|y ,f2 !! 2,n(C\ nu ,i(C ln
h)n ,i th0 t, hon 1i V,i(C2,iW! ?>p l'i qu t/0nh &uy+t
&|y ny cho n khi kh"ng c xy /, 4i+c 1i cho cK, h,i
ph9n tt!
QA &$= T, -p thJ t* &|y -. -,u = Ts gg gm T~ C~ CT gT
?:= s 1 ! Z [ a
Ts CT CT CT CT CT CT
gg Ts C~ C~ C~ C~ C~
gm gg Ts Ts Ts Ts Ts
T~ gm gg T~ T~ T~ T~
C~ T~ gm gg gT gT gT
CT C~ T~ gm gg gg gg
gT gT gT gT gm gm gm
( Mh )ng t/0nh=
inclu&: c-t&io!hb
inclu&: cconio!hb
int m,ngCff\ ^^ bin ton c$c
int -i: \
AoiC ?u%%(RPoItKint O1ssk int nL
w int ikktRmHm
JoI Kir1m iinm iL
JoI Krnn1mjrim nnL
{{
K thut lp trnh
iJ KOn1 j OL
w tRmH r On1m
On1 r Om
O r tRmHm
AoiC m0inVW
-i:S 6h,p&,y-oVm,ngW\
Hubbl:[o/tVm,ng2-i:W\
?i:tk:Vm,ng2-i:W\
]hil: VicSW\
i Vic/W ^^ ph9n thJ b, c tx T ph9n tt t/E lPn
^^ G, 4o [t,ck ch# -. 9u 4 ch# -. cu.i cK, ph9n
thJ b,
-pUU\
[t,ck-p!qSi\
[t,ck-p!/S/\
/ S \ ^^ Mhun b 4 t/A ph<n ho'ch ph9n c gi
t/ nhY h)n ch.t
]hil: Vqc /W\
]hil: V-pS(CW\ ^^ D:t thuc khi [t,ck /ong
AoiC m0inVW
-i:S 6h,p&,y-oVm,ngW\
?i:tk:VF,y -o ng,u nhi:n =2m,ng2-i:W\
_uick[o/tVm,ng2-i:W\
?i:tk:Vei, t/i m,ng &, &uoc -,p =2m,ng2-i:W\
4oi& m,inVW
int -o24it/i\
-i:S 6h,p&,y-oVm,ngW\
_uick[o/tVm,ng2-i:W\
?i:tk:Vei, t/i m,ng &, &uoc -,p =2m,ng2-i:W\
p/intVnei, t/i muon tim =W\
-c,nV&2-oW\
4it/i S [:,/chVm,ng2-i:2 -oW\
i V4it/i S(CW
p/intVQi t/i cu, -o & t/ong &,y S &2-o24it/iW\
:l-: p/intV Dhong co -o & t/ong &,y2-oW\
g:tchVW\
~m
K thut lp trnh
~z
K thut lp trnh
?6i tH:
C! Mho mt &|y n -. th*c R =
,W T0m ph9n tt nhY nh5t cK, &|y -. R
bW T0m ph9n tt ln nh5t cK, &|y -. R
cW TAnh gi t/ t/ung b0nh cK, &|y -. R!
T! ri+n ,ng lu hnh cc tB gi5y b'c mffff2 Tffff2 Cffff2
mfff2 Tfff2 Cfff2 mff2 Tff2 Cff! 6u c x @ng2 hYi
/ng nPn chNn cc tB gi5y b'c no -. lng cc tB gi5y b'c l At
nh5t!
g! Qit ch)ng t/0nh nhp mt m, t/n -. nguyPn c kAch thc O
x 6! yn /,=
( T1ng cc ph9n tt cK, m, t/n
( [ cc ph9n tt &)ng2 ph9n tt <m2 ph9n tt f cK, m, t/n
( ih9n tt ln nh5t2 nhY nh5t cK, m, t/n
( Mc ph9n tt t/Pn Bng cho chAnh cK, m, t/n V4i O S
6 W
( T1ng cc ph9n tt t/Pn Bng cho chAnh cK, m, t/n V4i
O S 6 W
k! Mho T m, t/n 4u"ng RVn2nW 4 H Vn2nW =
( TAnh m, t/n t1ng M S RU H2
bit Mi2 S Ri2 U Hi2 2 i2 C2m
( TAnh m, t/n tAch F S R a H2
bit F i2 S A i k B k j
k
n
[ , ] * [ , ]
1
\ i2 S C!!n
m! T'o mt m:nu th*c hi+n cc c"ng 4i+c -,u=
,! 6hp &,nh -ch c kiu hNc 4iPn 4o mt mng2 moi hNc
4iPn c cc th"ng tin -,u= m,-o VintW2 hot:n Vchuoi t.i , gf
ku t*W2 phiV6RO^6}W2 im Vo,tW2 h'ng Vun-ign:& ch,/W! _u
t/0nh nhp -n &xng l'i khi m| -. nhp 4o l f!
b! ?i+t kP &,nh -ch hNc 4iPn /, mn h0nh th:o &'ng -,u=
O| -. rN 4 tPn ihi Gim r'ng
c! T0m kim mt hNc 4iPn t/ong &,nh -ch th:o m| -.2 4 in
/, cc th"ng tin c%n l'i cK, hNc 4iPn !
&! [p xp &,nh -ch hNc 4iPn th:o im tqng &9n!
~{
K thut lp trnh
:! Xp h'ng &,nh -ch hNc 4iPn th:o qui tc c7ng im th0
c7ng h'ng2 h'ng cK, hNc 4iPn -,u bng h'ng cK, nhm hNc
4iPn t/c cng -. ngBi cK, nhm hNc 4iPn t/c c7ng im!
! ei -t &,nh -ch hNc 4iPn | c thJ t* tqng &9n th:o
im\ 6hp thPm C hNc 4iPn -,o cho -,u khi nhp th0 &,nh
-ch 4n c%n c thJ t*!
g! Mp nht -t, 1i cc mu tin th:o m| -. V6hp m| -.2 -,u
hi+u ch#nh l'i hot:n2 ph,i2 imW!
h! ?o'i bY C hNc 4iPn /, khYi &,nh -ch &*, 4o m| -.!
s! ,W Qit ch)ng t/0nh t'o ngu nhiPn mt &|y -. Tffff -.
nguyPn c gi t/ tx f n ~~~~!
bW Gm -. l9n -o -nh cK, T gii thut t0m kim tu9n t* Vt/Pn
&|y -. ch, c thJ t*W 4 t0m kim nh ph<n Vt/Pn &|y -. |
c -p thJ t*W!
cW T/ong t/Bng hp &|y -. t/Pn l Tfffff -. nguyPn ph<n bi+t
khc nh,u t/ong miLn gi t/ C!!gfffff th0 t, t.i u gii
thut -p xp 4L m>t kh"ng gi,n 4 thBi gi,n nh th
no Mho bit thBi gi,n th*c thi cK, gii thut _uick [o/t 4
gii thut b'n ci >t!
z! Mho bit thBi gi,n th*c thi cK, T gii thut Hubbl: [o/t 4
_uick [o/t t/Pn &|y -. c -. ph9n tt kh ln!
{! ei -t t, | c C &|y -. th*c R tqng &9n! Qit gii thut thPm
C -. th*c x 4o &|y R -,o cho -,u khi thPm x th0 &|y 4n tqng
&9n
~! Qit hm x, t5t c cc ph9n tt c t/ bng x t/ong &|y -. R!
Cf! Qit ch)ng t/0nh tAnh im cK, mt lp=
( 6hp cc th"ng tin -,u cho moi hNc 4iPn = hot:n2
n,m-inh2 t/ung b0nh rDC2 t/ung b0nh rDT
( yn /, &,nh -ch cc hNc 4iPn cK, lp th:o thJ t* gim &9n
cK, GTH ton nqm
TH ton nqm S VTH rDC U TH rDTW^T
th:o mu -,u=
4ONH PCH i>" L:P ......
PTT Hp 2 T+n T? HK1 T? HK T? to6n
nm
Hn'
~~
K thut lp trnh
C
T
g
& u )=( Mc hNc 4iPn c7ng GTH th0 c7ng h'ng
( yn Cz hNc 4iPn t/Pn mt t/,ng mn h0nh
CC! Mho T &|y -. R c n ph9n tt 4 H c m ph9n tt 4i thJ t*
tqng &9n! r|y t/n T &|y -. t/Pn thnh C &|y mi M -,o cho -,u
khi t/n th0 M c3ng tqng &9n!
Cff
K thut lp trnh
CHNG Z CxN TR KPxINT9RL
I. 5NH NGH/O
Mon t/Y l mt kiu &8 li+u &7ng chJ, , ch#! Hin con
t/Y l mt bin chJ, , ch# cK, mt th*c th no 2 th*c
th l bin ho>c l hm!
Mon t/Y thBng c &7ng =
( T/ 4L nhiLu t/ tx hm qu, c) ch t/uyLn th:o th,m -.
th:o , ch# t/ong hm Vth,m -. h0nh thJc binW!
( T'o cc c5u t/;c &8 li+u phJc t'p nh &,nh -ch liPn kt 4
c<y nh ph<n!
( T/uyLn mng 4 chuoi gi8, cc hm kh thun li!
I.1. Khai 1o: Dh,i bo bin pi l con t/Y t/Y n mt -.
nguyPn!
int ;Him
?;c ny2 pi chim T byt:- chJ, , ch# cK, -. nguyPn
m n ,ng ch# n2 @ng thBi t/0nh biPn &ch cK, M c3ng
bit pi ,ng ch# n mt -. nguyPn V&o kh,i boW! G ,
mt gi t/ nguyPn 4o 47ng nh m pi ,ng t/Y n2 t, &7ng
l+nh= api S C\
QA &$=
4oi& m,inVW
int xSk2 ySCf\
int apx2 apy \ ^^ px2 py l cc bin con t/Y
px S x \ ^^ , , ch# cK, x2y 4o px 4 py
py S y\
apx S apx U apy\ ^^ tqng gi t/ cK, 47ng nh m px
,ng t/Y ti
^^ thPm y 2 t)ng )ng 4i x S xUy
4oi& m,inVW
int x2y\
p/int Vx2 y S W\
-c,n V& &2 x2 yW\
gi,oho,nVx2 yW\ ^^ T/uyLn , ch# cK, T bin x2y
cho hm ho,n&oi
II C= HhYH ton tI+n %i\n =on tI:
II.1. Ton tM =a chl U:
6u x l bin th"ng thBng2 x -n l , ch# cK, bin x
QA &$= o,t x2 ap\
x S mf\
CfT
K thut lp trnh
p S x\ ^^ -,i 40 p l bin con t/Y nPn t, 4it p S
x\
x S p\ ^^ -,i \ t, 4it x S ap\ l5y ni &ung
cK, p
II.. Ton tM n,i !ung ] :
6u p l point:/ th0 ap l ni &ung cK, n!
QA &$= int x2y2 ap\
x S mf\
p S x\ ^^ p chJ, , ch# cK, 47ng nh x
y S ap\ ^^ yS ap S mf 40 p chJ, , ch# cK, 47ng
nh x
QA &$= , ST\
p S ,\
b S VapW U U U g\ ^^ b Sm2 ap S g2 ,S g!
V 40 p t/Y ti , ch# , nPn ap tqng th0 , tqngW
T{m (i= ax l bin m x gi8 , ch#
x l , ch# cK, x nu x l bin th"ng th(
Bng
II.!. #hI6 c,ng trm 1iEn con trn /i m,t -. ngu"*n:
6u p l bin point:/ th0 pUn l , ch# cK, mt bin
mi cch n n bin th:o chiLu tqng2 c%n p(n th0 ngc l'i!
Ch> ):
( ihp cng con t/Y 4i mt -. nguyPn ch# c p &$ng t/Pn
mt &|y bin c7ng kiu
( Dh"ng c cng T point:/ 4i nh,u
( Dh"ng c nh<n2 chi,2 l5y & bin con t/Y 4i b5t k -. no
QA &$= ei -t t, c mng num-S Cf2Tf2gf2kf2mf! Qi+c
th,m kho ti num-i th*c ch5t l &7ng &'ng ku hi+u con t/Y2 40
khi biPn &ch2 t/0nh biPn &ch -n chuyn 1i ku hi+u mng
thnh ku hi+u con t/Y!
4oi& m,inVW
-t,tic int num- S Cf2Tf2gf2kf2mf\
o/ Vint i Sf\ icm\ iUUW
p/int V&n2 aVnum- U iWW\
Cfg
K thut lp trnh
L u = aVnum-UiW t)ng )ng 4i num-i
II.Z. #hI6 gn /G 6hI6 -o -nh:
B #hI6 gn= cc bin con t/Y c th gn cho nh,u 4i
iLu ki+n phi c7ng kiu
QA &$= int apC2 apT\
apC S Cf\
pT S pC\ ^^ l;c ny apT S Cf\
B #hI6 -o -nh= t, c th -o -nh T bin con t/Y x:m c
c7ng , ch# h,y kh"ng2 )ng nhiPn T bin con t/Y
phi c7ng kiu 4i nh,u!
II.[. eA chu"2n (i2u:
M; php= V DiuW atPnbin
QA &$= int apC2 num \
o,t apT\
num Sm\
pC S num\
apT S Vo,t W apC\ ^^ a pT S m!f
QA &$= int num2 ap2 n\
ch,/ c\
p S num\
ap S ~z\ ^^ num S~z
n S ap\ ^^ nS~z
c S Vch,/W ap\ ^^ c S h,j
Ch> ): G, ch# cK, mt bin c x:m nh mt con t/Y
hng2 &o n kh"ng c php gn2 tqng ho>c gim!
QA &$= int num2 ap2 n\
p S num\
p UU\ ^^ ;ng
V numW UU\ ^^ -,i
con t/Y hng
II.a. Khai 1o m,t con trn h4ng /G con trn chl En .i
t Lng h4ng:
,! Con trn h4ng:
Diu a con-t p S gi t/\
Cfk
K thut lp trnh
b! Con trn chl En .i tLng h4ng:
Diu con-t ap S gi t/ hng\
ho>c Mon-t kiu ap S gi t/ hng\
QA &$= ch,/ acon-t pT S RHMF
con-t ch,/ apCS RHMF
pT U U \ ^^ -,i
pC U U \ ^^ ;ng\ apCS hHj \ pC S HMF
III. PM t 3n' ]u0n 'i10 =on tI A6 m$n'
QA &$= T, c mng R nh -,u=
int RCf 2 ap\
th0 R S Rf
6u p S R th0 t/uy xu5t ti ph9n tt thJ i cK, mng R2 t, c
cc cch -,u=
Ri aVR U iW aV p U iW
Ri VR U iW Vp Ui W
QA &$= 6hp mng R=
int RCf 2 ap2 i\
p S R\
o/ Vi S f\ ic ~\ iUUW
-c,n V&2 pUi W\
Xu5t mng R=
o/ Vi S f\ ic ~\iUUW
p/int V&2 aVpUiWW\
QA &$= [p xp mng bng cch th,m kho con t/Y!
con-t n SCf \
int 0nk ;Hm
4oi& m,inVW
int 2t:mp\
cl/-c/VW\
Hr0m
p/intV6h,p &,y -o R =nW\
o/ Vint iSf\ icn\ iUUW
p/intVR& S 2iUCW\
-c,nV&2pUiW\
Cfm
K thut lp trnh
^^ [,p x:p m,ng R th:o gi,i thu,t Hubbl: [o/t
o/ V iSC\ icn\ iUUW
o/ VSn(C\ bSi\ ((W
i VaVpU(CW b aVpUWW
t:mp S aVpUW\
aVpUW S aVpU(CW\
aVpU(CW S t:mp\
p/intVn O,ng R -,u khi -,p x:p =nW\
o/ V iSf\ icn\ iUUW
p/intV{&2aVpUiWW\
4oi& m,inVW
ch,/ -/c-t/Sro,ng Q,n\
ch,/ &-t-t/Tf\
Cf~
K thut lp trnh
-t/cpyV&-t-t/2-/c-t/W\
p/intVn-2 &-t-t/W\
/:tu/n p \
]hil: V a- Sc a-Sf W
-UU\
i V a- S cW /:tu/n Vch,/ aWf\
:l-: /:tu/n - \
ch,/ -t/SDy \
4oi& m,inVW
ch,/ a4t\
4tS-t/ch/V-t/ 2yW\
i V4tSS6}?? W
p/intVDhong co ky tu t/ong chuoi W\
CCC
K thut lp trnh
:l-: p/intVnQi t/i S&2 4t(-t/UCW\
g:tchVW\
i/-t S 6}??\
6FZiT` p\
p S V6FZiT`Wm,llocV-i:oV-t/uct no&:WW\
/:tu/n VpW\
6FZiT` p\
p S 6:]6o&:VW\
p(bino S x\
CCz
K thut lp trnh
p(bn:xt S i/-t\
i/-t S p\
6FZiT` q\
iVp SS 6}??W
p/intVkhong th:m nut moi 4,o &,nh -,ch &uocW\
:l-:
q S 6:]6o&:VW\
q(bino S x\
q(bn:xt S p(bn:xt\
p(bn:xt S q\
CC{
K thut lp trnh
II.. C6 nht !anh -ch:
,! eii phng 47ng nhV/::6o&:W= rm ny &7ng hKy
n;t | c5p pht2 4 t/ 47ng nh 4L l'i cho m:mo/y h:,p!
4oi& /::6o&:V6FZiT` pW
/::VpW\
/:tu/nVi/-t SS 6}??W\
II.!. ou"t !anh -ch: Th"ng thBng t, h,y &uy+t &,nh -ch
liPn kt th*c hi+n mt c"ng 4i+c g0 2 nh li+t kP &8 li+u
t/ong &,nh -ch h,y m -. n;t t/ong &,nh -ch!!!
4oi& T/,4:/-:V6FZiT` i/-tW
6FZiT` p\
int -tt S f\
p S i/-t\
iVp SS 6}??W
p/intVn VDhong co -inh 4i:n t/ong &,nh -,chWW\
]hil:Vp S 6}??W
p/intVn m&{&2 -ttUU2 p(binoW\
p S p(bn:xt\
6FZiT` p\
p S i/-t\
]hil:Vp S 6}?? p(bino S x W
p S p(bn:xt\
/:tu/n VpW\
min S q(bino\
pmin S q\
CTT
K thut lp trnh
?6i tH:
C! Qit ch)ng t/0nh t'o mt m:nu th*c hi+n cc c"ng 4i+c -,u=
,! 6hp &,nh -ch liPn kt th:o gii thut thPm 4L 9u &,nh
-ch2 moi ph9n tt g@m c cc th"ng tin -,u= m--4 VintW2 4
hot:n V ch,/ hot:ngf W!
b! ?i+t kP &,nh -ch /, mn h0nh
c! Mho bit t1ng -. n;t t/ong &,nh -ch liPn kt2 >t tPn
hm l `:ccount
V int `:ccountV6FZiT` i/-tW W
&! ThPm C ph9n tt c ni &ung ino Vm--42 hot:nW 4o -,u
ph9n tt c thJ t* thJ i t/ong &,nh -ch!
ehi ch;= ( ThJ t* th:o qui c bt 9u l C
( 6u Vi cS fW thPm 4o 9u &,nh -ch
6u i b `:ccountVi/-tW th0 thPm 4o cu.i &,nh -ch!
:! yn /, hN tPn cK, -inh 4iPn c m| &o t, nhp 4o!
! ?o'i bY n;t c m| &o t, nhp 4o2 t/c khi x, hYi l'i H'n
tht -* mu.n x, V^6W
g! [p xp l'i &,nh -ch th:o thJ t* m| -. gim &9n!
h!ehi ton b &,nh -ch 4o l: tPn F[[Q!FRT
i! 6'p &,nh -ch tx l: F[[Q!FRT 4o &,nh -ch liPn kt! 6u
t/ong &,nh -ch liPn kt | c n;t th0 x, t5t c &8 li+u
hi+n c t/ong &,nh -ch liPn kt t/c khi , &8 li+u tx l:
4o!
T! Qit ch)ng t/0nh t'o mt &,nh -ch liPn kt th:o gii thut
thPm 4o cu.i &,nh -ch2 moi n;t chJ, mt -. nguyPn!
g! (Qit hm tPn F:l:t:6o&: x, n;t c , ch# p!
( Qit mt hm lo'i bY t5t c cc n;t c ni &ung x t/ong &,nh
-ch liPn kt i/-t!
k! Qit hm Mopy?i-t t/Pn &,nh -ch liPn kt t'o /, mt
&,nh -ch liPn kt mi gi.ng &,nh -ch liPn kt c3!
m! ehp mt &,nh -ch liPn kt c , ch# 9u l i/-tT 4o
mt &,nh -ch liPn kt c , ch# 9u l i/-tC ng,y -,u
ph9n tt thJ i t/ong &,nh -ch liPn kt i/-tC!
s! Qit hm lNc &,nh -ch liPn kt t/nh t/Bng hp cc n;t
CTg
K thut lp trnh
t/ong &,nh -ch liPn kt b t/7ng ino!
z! Go ngc 47ng liPn kt cK, mt &,nh -ch liPn kt -,o cho=
( i/-t -n ch# n ph9n tt cu.i
( ih9n tt 9u c liPn kt l 6}??!
{! Qit hm ?:tT/,4:/-: V6FZiT` i/-tW &uy+t ngc
&,nh -ch liPn kt!
~! Qit gii thut tch mt &,nh -ch liPn kt thnh h,i &,nh
-ch liPn kt2 t/ong mt &,nh -ch liPn kt chJ, cc ph9n
tt c -. thJ t* ln 4 mt &,nh -ch liPn kt chJ, cc ph9n tt
c -. thJ t* chn t/ong &,nh -ch liPn kt c3!
Cf! ( T'o mt &,nh -ch liPn kt chJ, tPn hNc 4iPn2 im t/ung
b0nh2 h'ng cK, hNc 4iPn V4i iLu ki+n ch# nhp tPn 4
im t/ung b0nhW! _u t/0nh nhp -n &xng l'i khi tPn nhp
4o l /ong!
( Xp h'ng cho cc hNc 4iPn! yn /, &,nh -ch hNc 4iPn thJ t*
h'ng tqng &9n Vehi ch; = M7ng im t/ung b0nh th0 c7ng
h'ngW!
CC! 6hp h,i , thJc th:o &,nh -ch liPn kt! yn /, tAch
cK, h,i , thJc ny!
QA &$= G, thJc i/-tC = Tx
m
Ukx
T
(C
G, thJc i/-tT = Cfx
z
(gx
k
Ux
T
Dt qu in /, = Tfx
CT
U gkx
~
( {x
z
( CTx
s
U zx
k
( x
T
Vehi ch; = Dh"ng nhp 4 in /, cc -. h'ng c h+ -. bng fW
CT! Qit gii thut thPm ph9n tt c ni &ung x 4o &,nh
-ch liPn kt c thJ t* tqng &9n -,o cho -,u khi thPm &,nh
-ch liPn kt 4n c thJ t* tqng!
Cg! ?o'i bY ph9n tt c ni &ung l x t/ong &,nh -ch liPn
kt c thJ t* tqng &9n!
Ck! Mho T &,nh -ch liPn kt i/-tC2 i/-tT c thJ t* tqng
&9n th:o ino! Qit gii thut O:/g: t/n T &,nh -ch liPn
kt ny l'i -,o cho &,nh -ch liPn kt -,u khi t/n c3ng c
thJ t* tqng &9n!
CTk
K thut lp trnh
CH3NG a == thut ton tI+n =Fu tIl= =u
OTrQQR
M<y l mt c5u t/;c &8 li+u /5t th"ng &$ng 4 qu,n t/Nng
t/ong nhiLu ph'm 4i khc nh,u cK, k thut my tAnh!
QA &$ = T1 chJc cc qu,n h+ hN hng t/ong mt gi, ph2
m$c l$c cK, mt cu.n -ch2 x<y &*ng c5u t/;c 4L c; php
t/ong cc t/0nh biPn &ch!
T/ong ch)ng t/0nh ny2 ch;ng t, kho -t cc khi ni+m c)
bn 4L c<y2 cc php ton t/Pn c<y nh ph<n2 c3ng nh cc
php ton t/Pn c<y nh ph<n c<n bng V RQ? t/::W 4 Jng
&$ng cK, h,i lo'i c<y nh ph<n t0m kim VH[TW2 c<y nh
ph<n c<n bng V RQ? t/::W!
I. Phun (oi =uQ:
I.1. + ,t -. (hi nim c< 1?n:
C! CuQ= M<y l tp hp cc ph9n tt gNi l n;t2 mt n;t Vt(
)ng t* nh mt ph9n tt cK, &|yW c th c kiu b5t k! Mc n;t
c biu &iIn bEi C ku t* ch82 mt chuoi2 mt -. ghi t/ong mt
4%ng t/%n!
7,t s" 10nh ngh6a the) 1; <u.
Ot n;t )n c3ng chAnh l mt c<y!
Mc n;t c gNi l E c7ng mt c<y khi c Bng i gi8,
cc n;t ny!
Ot c<y -n b,o g@m mt n;t g.c V`ootW 4 m c<y con2
t/ong moi c<y con l'i c mt n;t g.c 4 m1 c<y con nhY
h)n 4!4!
Ot c<y kh"ng c mt n;t no c gNi l c<y /ong!
QA &$ C =
CTm
K thut lp trnh
A
B C
G H E
J
D
F
K I
1
2
3
4
6u*t goYc
r0nh m!C! M<y 4i n;t g.c l R
( R l n;t g.c 4i g c<y
con l9n lt c g n;t g.c
/iPng lJ H2 M2 F
( 6;t ch, (ancest)r)
6;t con (EescenEent)
R l n;t ch, cK, H2 M2 F
e2 r l n;t con cK, M
e2 r kh"ng qu,n h+ ch,
con 4i R
QA &$ T = Qi L c)ng mt m"n hNc T2 t, c th biu &iIn
&'ng c<y nh -,u =
T
CHNG I CHNG II CHNG III
I.1 I. II.1 II.! II.
II.1.1 II.1.
r0nh m!T
Mr)6e y
y!C
y!T
Mr)6e yy
yy!C
yy!C!C
yy!C!T
yy!T
yy!g
Mr)6e yyy
T! Nlt =h0 (Fncest)r) = 6;t Jng t/Pn cK, mt n;t c
gNi l n;t ch,
M l n;t ch, cK, e2 r
Nlt =on (EescenEent) = 6;t Jng -,u mt n;t khc c
gNi l n;t con cK, n;t !
6;t y2 2 D l n;t con cK, n;t Z
g! ?= (Eegree) =
( Hc cK, n;t l -. c<y con cK, n;t !
M c bc l T2 Z c bc l g Vr0nh m!CW
CTs
K thut lp trnh
( Hc cK, c<y l bc ln nh5t cK, cc n;t t/ong c<y!
M<y t/ong h0nh m!C c bc l g!
M<y bc n c gNi l c<y n ph<n nh c<y nh ph<n2
c<y t,m ph<n!
k! Nlt ( A6 nlt tIun' 'i0n=
( 6;t l l n;t c bc bng f VtJc l kh"ng c c<y con
noW =
( 6;t t/ung gi,n= l mt n;t c bc khc f 4 kh"ng phi
l n;t g.c!
QA &$= T/ong h0nh m!C2 H2 e2 r2 y2 2 D2 l n;t l
M2 F2 Z l n;t t/ung gi,n!
m! "W= =e0 nlt (le8el) = 6;t g.c c mJc l C
OJc cK, n;t con S mJc cK, n;t ch, U C
QA &$= t/ong h0nh m!C2
R c mJc l C
H2 M2 F c mJc l T
e2 r2 Z2 c mJc l g
y2 2 D c mJc l k
s! Chiu =0o =e0 =uQ (heght) = l mJc ln nh5t cK, cc
n;t l t/ong c<y!
QA &$= M<y t/ong h0nh m!C c chiLu c,o l k
z! ThW tM =e0 == nlt ()rEer )f n)Ees) = 6u c<y c gNi
l c thJ t* th0 phi m bo 4 t/A cK, cc n;t con tx t/i qu,
phi2 tJc l nu th,y 1i 4 t/A cK, mt n;t con b5t k th0 t,
| c mt c<y mi!
QA &$ =
A
B C
A
C B
c,py kh,*c
r0nh m!g= [,u khi 1i 4 t/A cK, T n;t H2 M t, | c c<y mi!
{! Chiu C6i ) on' )i KP0th (Rn'thL:
CTz
K thut lp trnh
n MhiLu &i Bng i cK, n;t x= l -. cc c'nh i tx n;t
g.c n n;t x!
QA &$= T/ong h0nh m!C=
6;t g.c R c chiLu &i Bng i l C
6;t H2 M2 F c chiLu &i Bng i l T
T1ng qut= mt n;t t'i mJc i c chiLu &i Bng i l i
( MhiLu &i Bng i cK, c<y= l t1ng cK, cc chiLu &i
Bng i cK, t5t c cc n;t t/ong c<y!
QA &$= MhiLu &i Bng i cK, c<y t/ong h0nh m!C l gC!
MhiLu &i Bng i t/ung b0nh cK, c<y=
n ^ W i !
n
V
i
i
i i
=
t/ong n
i
l -. cc n;t E mJc i 4 n l t1ng -. cc n;t
t/ong c<y!
I.. Cch 1i2u !i3n c$"= biu &iIn C c<y2 t, c nhiLu
cch nh biu &iIn bng @ th2bng gin @2 bng ch# -.!!
6hng th"ng thBng2 t, h,y &7ng &'ng @ th biu &iIn C
c<y nh h0nh m!C
I.!. Di2u !i3n thK tA cc n>t trong c$" :
Ot c<y thBng t1 chJc cc n;t th:o mt thJ t* nh5t nh
cqn cJ 4o mt ni &ung gNi l kh, cK, cc n;t! M th t1
chJc c<y c kh, tqng &9n th:o mJc tx t/i qu, phi nh 4A &$
-,u =
1
2 3
4
`oot
7 6 8
5
9
RxxT
CTgkmsz{~
6h 4y khi &uy+t l'i c<y
th:o mJc tqng &9n 4 tx t/i
qu, phi t, -n l'i c c thJ
t* cc n;t nh t/Pn!
r0nh m!k! M<y c thJ t* tqng &9n th:o mJc tx t/i qu, phi
II. CuQ nh5 Hhun ODinar" trQQR
CT{
K thut lp trnh
II.1. X=nh ngh@a :
C! CuQ nh5 Hhun l c<y c bc bng T2 tJc l -. n;t con
t.i , cK, mt n;t b5t k t/ong c<y l T!
M<y nh ph<n c th l mt c<y /ong Vkh"ng c n;t noW
ho>c c<y ch# c mt n;t2 ho>c c<y ch# c cc n;t con bPn
t/i V?:t Mhil&W ho>c n;t con bPn phi V`ight Mhil&W ho>c c
h,i!
QA &$= r0nh m!k l c<y nh ph<n!
T! C= =uQ nh5 Hhun )<= %it:
( M<y nh ph<n ;ng= Ot c<y nh ph<n c gNi l c<y
nh ph<n ;ng nu n;t g.c 4 t5t c cc n;t t/ung gi,n Lu
c T n;t con!
R
H
F Z
e
M
X
r y
r0nh m!m! M<y nh ph<n ;ng
ehi ch;= nu c<y nh ph<n ;ng c n n;t l th0 c<y ny
-n c t5t c Tn(C n;t!
( M<y nh ph<n 9y= Ot c<y nh ph<n gNi l c<y nh
ph<n 9y 4i chiLu c,o & th0=
! 6 phi l c<y nh ph<n ;ng 4
! T5t c cc n;t l Lu c mJc l &!
r0nh m!m kh"ng phi l c<y nh ph<n 9y
CT~
K thut lp trnh
R
H
F
r
y
Z
D
M
? O
e
6
r0nh m!s! M<y nh ph<n 9y!
ehi ch;= M<y nh ph<n 9y l c<y nh ph<n c -. n;t t.i
, E moi mJc!
( M<y nh ph<n t0m kim VHin,/y [:,/ch T/::W= Ot c<y
nh ph<n gNi l c<y nh ph<n t0m kim nu 4 ch# nu .i
4i mNi n;t cK, c<y th0 kh, cK, mt n;t b5t k phi ln h)n
kh, cK, t5t c cc n;t t/ong c<y con bPn t/i cK, n 4 phi
nhY h)n kh, cK, t5t c cc n;t t/ong c<y con bPn phi cK,
n!
QA &$=
8
7 9
3
12
11
10 2
1
5
4 6
k
1
<k
1
<k
1
r0nh m!z! M<y nh ph<n t0m kim VH[TW
( M<y nh ph<n c<n bng VRQ?W= Ot c<y nh ph<n c
gNi l c<y nh ph<n c<n bng nu 4 ch# nu .i 4i mNi n;t
cK, c<y th0 chiLu c,o cK, c<y con bPn t/i 4 chiLu c,o cK,
Cgf
K thut lp trnh
c<y con bPn phi h)n km nh,u nhiLu nh5t l C! VTh:o
R&:l-on(Q:l-ki 4 ?,n&i-W!
R
M
Z
H
F
e
y r
r0nh m!{! M<y nh ph<n c<n bng
( M<y nh ph<n c<n bng hon ton= Ot c<y nh ph<n
c gNi l c<y nh ph<n c<n bng hon ton nu 4 ch# nu
.i 4i mNi n;t cK, c<y th0 -. n;t cK, c<y con bPn t/i 4 -.
n;t cK, c<y con bPn phi h)n km nh,u nhiLu nh5t l C!
R
M
Z
H
F
y r
Z
r
r0nhm!~! M<y nh ph<n c<n bng hon ton
g! C= HhYH CuQt =uQ nh5 Hhun (-ra8erse) = l qu
t/0nh i qu, cc n;t ;ng mt l9n! Dhi &uy+t c<y2 t, thBng
&7ng g cch &uy+t c) bn -,u =
#rQor!Qr ( TiLn t* V6?`W &uy+t qu, n;t g.c t/c2 -,u
i qu, c<y con bPn t/i l'i p &$ng i/:o/&:/ cho c<y con bPn
t/i! Mu.i c7ng qu, c<y con bPn phi2 p &$ng i/:o/&:/ cho c<y
con bPn phi!
QA &$= Th:o c<y nh ph<n m!k2 t, c=
RxxT C T g k s z m { ~
Inor!Qr ( T/ung t* V?6`W = qu, c<y con bPn t/i &uy+t t/c
Vth:o thJ t* ?6`W2 -,u thqm n;t g.c! Mu.i c7ng qu, c<y con
bPn phi Vth:o thJ t* ?6`W
QA &$= Th:o c<y nh ph<n m!k2 t, c=
RxxT T C s k z g { m ~
CgC
K thut lp trnh
#o-tor!Qr B ru t* V?`6W = qu, c<y con bPn t/i &uy+t t/c
Vth:o thJ t* ?`6W2 -,u qu, c<y con bPn phi Vth:o thJ t*
?`6W! Mu.i c7ng thqm n;t g.c!
QA &$= Th:o c<y nh ph<n m!k2 t, c=
RxxT T s z k { ~ m g C
Ghi =hl = G.i 4i c<y t, c th t1 chJc thJ t* th:o kh, l
mt ni &ung cK, n;t ho>c t, >t thPm C :l& gNi l kh, cK,
n;t !
II.. Cc 6hI6 ton tr*n c$" nh= 6h$n:
n Kh0i %o: G t1 chJc &8 li+u th:o c<y nh ph<n2 t, c
th &7ng mt ni &ung cK, &8 li+u lm kh, -p xp 4
t1 chJc c<y th:o nhiLu cch khc nh,u! 6hng th"ng thBng
thun ti+n cho 4i+c t0m kim 4 th*c hi+n cc php ton khc
t/Pn c<y2 ngBi t, t'o thPm mt kh, /iPng t/ong cc ph9n tt 4
t'o /, c<y nh ph<n t0m kim!
G kh,i bo bin tIRR qun lu mt c<y nh ph<n2 4i ni
&ung ino chJ, -. nguyPn2 t, kh,i bo nh -,u=
-t/uct no&:typ:
int k:y\
int ino\
-t/uct no&:typ: al:t\
-t/uct no&:typ: a/ight\
\
typ:&: -t/uct no&:typ: a6FZiT`\
6FZiT` tIRR\
1. To c$":
,! DhEi t'o c<yVyniti,li:W= &7ng khEi ng c<y nh
ph<n2 cho ch)ng t/0nh hiu l hi+n t'i c<y nh ph<n /ong!
4oi& yniti,li:V6FZiT` /ootW
/oot S 6}??\
6FZiT` p\
p S V6FZiT`Wm,llocV-i:oV-t/uct no&:typ:WW\
/:tu/nVpW\
ehi ch; = G t'o c<y nh ph<n &o bin t/:: qun lu2 t, gNi=
M/:,t:T/::Vt/::W\
. C6 nht c$":
,! eii phng 47ng nhV/::6o&:W= gii phng 47ng nh m p
,ng t/Y n!
4oi& /::6o&:V6FZiT` pW
/::VpW\
i V/(bl:t S 6}??W
/:mo4:c,-:g V/(bl:tW\
^^&:n &,y / l, nut cuc t/,i cu, c,y con b:n ph,i co nut goc
l, /p
:l-:
6FZiT` p\
p S /oot\
]hil:Vp S 6}?? xSp(bk:yW
iVx c p(bk:yW
p S p(bl:t\
:l-:
p S p(b/ight\
/:tu/nVpW\
int k:y\
int ino\
int b\
-t/uct no&:typ: al:t2 a/ight\
\
typ:&: -t/uct no&:typ: a6FZiT`\
III..1. Th*m n>t:
( 6i &ung: ThPm C n;t c kh, x2 ni &ung , 4o c<y nh
ph<n t0m kim c<n bng -,o cho -,u khi thPm th0 c<y nh
ph<n 4n l c<y nh ph<n t0m kim c<n bng!
( eii thut=
ThPm n;t 4o c<y nh b0nh thBng2 ngh, l n;t 4x,
thPm -n l n;t l!
TAnh l'i ch# -. c<n bng cK, cc n;t c b nh hEng
CkC
K thut lp trnh
Dim t/, x:m c<y c b m5t c<n bng h,y kh"ng
6u c<y b m5t c<n bng th0 t, c<n bng l'i c<y!
a Trc hEth ta hq" [It [Qm cc trrng hL6 nGo (hi th*m
n>t %Gm c$" 1= mt c$n 14ng!
X:m c<y h0nh m!Cm2 t, nhn th5y=
( 6u thPm n;t 4o C t/ong s 4 t/A H t/Pn c<y th0 c<y
4n c<n bng!
( 6u thPm n;t 4o C t/ong cc 4 t/A }C}CT t/Pn c<y
th0 c<y -n m5t c<n bng!
U ThPm cc n;t 4o -,u bPn t/i cK, n;t R Vc
R
S CW
th0 c<y -n b m5t c<n bng 40 n;t R ,ng b l+ch t/i! G l
cc 4 t/A }C2 }T2 }g2 }k!
U ThPm cc n;t 4o -,u bPn phi cK, n;t M Vc
M
S (CW
th0 c<y -n b m5t c<n bng 40 n;t M ,ng b l+ch phi! G l
cc 4 t/A }~2 }Cf2 }CC2 }CT!
Tm l'i: -a c: I trGng h=p kh thPm nt Q 8) cL. FRL lm
cL. m9t cLn b!ngS 1: l thPm c*c nt 8) sau bPn tr* cTa nt
c: cf U HS 8 thPm c*c nt 8) sau bPn phA cTa nt c: cf U VH.
a C$n 14ng %i c$"= eNi y, l n;t t/c g9n nh5t b m5t
c<n bng khi thPm n;t x 4o c<y RQ?! Fo c T t/Bng hp b
m5t c<n bng khi thPm n;t x l t)ng t* nh,u nPn t, ch# xt t/(
Bng hp b
y,
SC 4 n;t l thPm 4o l n;t -,u bPn t/i cK, n;t y,!
C
f
Tg
chi:lu
c,o
n
TC
chi:lu
c,o
n
TT
chi:lu
c,o
n
[
y,
r0nh m!Cs! 6hnh c<y con n;t g.c y, t/c khi thPm n;t!
6hn xt=
( Q0 n;t y, c b
y,
S C nPn n;t y, chc chn c n;t con
bPn t/i - 4i b
-
S f
CkT
K thut lp trnh
( Q0 y, l n;t g9n nh5t c b l C nPn n;t - 4 cc n;t t/c
khc cK, n;t x V-n thPm 4oW c b l f!
(Gc,o VTCW S Gc,oVTTW S Gc,oVTgW
Trrng hL6 1a= 6u thPm n;t mi x 4o 4 t/A n;t -,u bPn t/i
cK, - Vthuc nhnh TCW t, xo,y phi qu,nh n;t y,
( 6;t - -n l n;t g.c mi cK, nhnh c<y ny 4i b
-
S f
( 6;t y, l n;t con bPn phi cK, - 4i b
y,
S f!
f
TC
chi:lu
-,pu
n
f
TT
chi:lu
-,pu
n
Tg
chi:lu
-,pu
n
[
y,
x
T
C
Tg
chi:lu
-,pu
n
TC
chi:lu
-,pu
n
TT
chi:lu
-,pu
n
[
y,
x
Q)a. phaW
<uanh nu#t .a
r0nh m!Cz! Xo,y phi qu,nh n;t y, c<n bng l'i c<y!
Trrng hL6 11= 6u thPm n;t mi x 4o 4 t/A n;t -,u bPn
phi cK, - Vthuc nhnh TTW t, xo,y T l9n Vxo,y kpW= xo,y t/i
qu,nh n;t - 4 xo,y phi qu,nh n;t y,
( 6;t p -n l n;t g.c mi cK, nhnh c<y ny 4i b
p
S f
( 6;t y, l n;t con bPn phi cK, p 4i b
y,
S (C
( 6;t - l n;t con bPn t/i cK, p 4i b
-
S f
Ckg
K thut lp trnh
T
(C
Tg
chi:lu
-,pu
n
TC
chi:lu
-,pu
n
[
y,
C
TT(C
chi:lu
-,pu
n(C
TT(T
chi:lu
-,pu
n(C
x
p
M<y RQ? -,u khi thPm n;t x
x
TT(C
chi:lu
-,pu
n(C
T
f
TC
chi:lu
-,pu
n
[
p
TT(T
chi:lu
-,pu
n(C
Tg
chi:lu
-,pu
n
y,
T
Q)a. tra#
<uanh nu#t D
Q)a. phaW
<uanh nu#t .a
x
TT(C
chi:lu
-,pu
n(C
f
f
TC
chi:lu
-,pu
n
[
p
(C
TT(T
chi:lu
-,pu
n(C
Tg
chi:lu
-,pu
n
y,
r0nh m!C{! Xo,y kp Vxo,y t/i qu,nh n;t -2 xo,y phi qu,nh
n;t y,W c<n bng l'i c<y!
Ckk
K thut lp trnh
Hng -,u <y ph<n bi+t cc t/Bng hp c<y b m5t c<n
bng khi thPm n;t 4 cc php xo,y c<y t)ng Jng c<n
bng l'i c<y=
TIon'
hfH
TI:= ,hi
th+m nlt E
P0u ,hi
th+m nlt E
C= HhYH Eo0Q =uQ
A6 =h V- =un
%&n' m:i
C!, b
y,
S C
b
-
S f
b
y,
S T
b
-
S C
X)a. phA <uanh nt
.a
b
-
Sf2 b
y,
S f
C!b b
y,
S C
b
-
S f
b
y,
S T
b
-
S (C
X)a. k(p
C! Xo,y t/i qu,nh n;t
-
T! Xo,y phi qu,nh
n;t y,
b
-
Sf2 b
y,
S (C
T!, b
y,
S (C
b
-
S f
b
y,
S (T
b
-
S (C
X)a. tr* <uanh nt
.a
b
-
Sf2 b
y,
S f
T!b b
y,
S (C
b
-
S f
b
y,
S (T
b
-
S C
X)a. k(p
C! Xo,y phi qu,nh
n;t -
T! Xo,y t/i qu,nh n;t
y,
b
-
Sf2 b
y,
S C
( eii thut=
ihp xo,y t/i V`ot,t:?:tW= xo,y t/i c<y nh ph<n
t0m kim c n;t g.c l /oot2 yPu c9u /oot phi c n;t con bPn
phi VgNi l n;t pW! [,u khi xo,y t/i th0 n;t p t/E thnh n;t
g.c2 n;t g.c c3 t/E thnh n;t con bPn t/i cK, n;t g.c mi!
ihp xo,y t/i t/ 4L con t/Y ch# n;t g.c mi!
Ckm
K thut lp trnh
6FZiT` `ot,t:?:tV6FZiT` /ootW
6FZiT` p\
iV/oot SS 6}??W
p/intVDhong th: xo,y t/,i 4i c,y bi /ong!W\
:l-:
iV/oot(b/ight SS 6}??W
p/intVDhong th: xo,y t/,i 4i khong co nut con
b:n ph,i!W\
:l-:
p S /oot(b/ight\
/oot(b/ight S p(bl:t\
p(bl:t S /oot\
/:tu/n p\
6FZiT` p\
iV/oot SS 6}??W
p/intVDhong th: xo,y ph,i 4i c,y bi /ong!W\
:l-:
iV/oot(bl:t SS 6}??W
p/intVDhong th: xo,y ph,i 4i khong co nut con
b:n t/,i!W\
:l-:
p S /oot(bl:t\
/oot(bl:t S p(b/ight\
p(b/ight S /oot\
Cks
K thut lp trnh
/:tu/n p\
ehi ch; = G t'o c<y nh ph<n &o bin t/:: qun lu2 t, gNi=
M/:,t:RQ?T/::Vt/::W\
III... C6 nht c$":
C! -m k4m KPR0I=hL: T0m n;t c kh, bng x t/Pn
c<y nh ph<n RQ? c g.c l /oot! 6u t0m th5y x t/ong c<y
th0 t/ 4L , ch# cK, n;t c t/ bng x t/ongc<y2 nu kh"ng
c th0 t/ 4L t/ 6}??!
Fo RQ? l c<y nh ph<n H[T nPn t, c th t0m kim
nh,nh bng ph)ng php t0m kim nh ph<n2 4 &o tAnh ch5t
l;c ny c<y c<n bng nPn thBi gi,n t0m kim -n nh,nh h)n
/5t nhiLu!
6FZiT` -:,/chV6FZiT` /oot2 int xW
6FZiT` p\
p S /oot\
]hil:Vp S 6}?? xSp(bk:yW
iVx c p(bk:yW
CmC
K thut lp trnh
p S p(bl:t\
:l-:
p S p(b/ight\
/:tu/nVpW\
iV/oot S 6}??W
CmT
K thut lp trnh
p/intV& 2 /oot(binoW\
i/:o/&:/V/oot(bl:tW\
i/:o/&:/ V/oot(b/ightW\
iV/oot S 6}??W
yno/&:/V/oot(bl:tW\
p/intV& 2 /oot(binoW\
yno/&:/V/oot(b/ightW\
iV/oot S 6}??W
io-o/&:/V/oot(bl:tW\
io-o/&:/V/oot(b/ightW\
p/intV& 2 /oot(binoW\
Cmg
K thut lp trnh
?6i tH:
C! Qit l'i cc ch)ng t/0nh &uy+t c<y nh ph<n th:o ph)ng
php kh"ng + qui!
T! Qit ch)ng t/0nh t'o mt m:nu th*c hi+n cc m$c -,u=
,! T'o c<y nh ph<n t0m kim 4i ni &ung l -. nguyPn
Vkh"ng t/7ng nh,uW!
b! ?i+t kP c<y nh ph<n /, mn h0nh th:o thJ t* 6?`
c! Gm t1ng -. n;t2 -. n;t l2 4 -. n;t t/ung gi,n cK, c<y!
&! TAnh c,o cK, c<y!
:! ?o'i bY n;t c ni &ung l x t/ong c<y nh ph<n H[T!
! ThPm n;t c ni &ung x 4o c<y nh ph<n H[T -,o cho
-,u khi thPm th0 c<y 4n l H[T!
g! Mho mt c<y nh ph<n t/::2 h|y 4it ch)ng t/0nh -,o
chp n thnh mt c<y mi t/::T2 4i kh,2 ni &ung2 4 liPn
kt gi.ng nh c<y t/::!
k! Qit cc hm kim t/, x:m c<y nh ph<n=
,! M phi l c<y nh ph<n ;ng kh"ng!
b! M phi l c<y nh ph<n 9y kh"ng!
m! Qit hm kim t/, n;t x 4 y c t/Pn c<y h,y kh"ng2 nu c
c x ln y t/Pn c<y th0 xc nh n;t g.c cK, c<y con nhY
nh5t c chJ, x 4 y!
s! Mho mt c<y biu thJc2 h|y 4it hm M,lcul,t: V6FZiT`
/ootW tAnh gi t/ cK, c<y biu thJc 2 bit /ng cc
ton tt c &7ng t/ong biu thJc l=
U ( a ^
z! Qn l'i h0nh nh c<y nh ph<n t0m kim2 c<y nh ph<n
t0m kim c<n bng nu cc n;t thPm 4o c<y th:o thJ t* nh
-,u=
{ g m T Tf CC gf ~ C{ k
{! 6hp 4o C biu thJc -. hNc2 chuyn biu thJc thnh
c<y nh ph<n2 n;t g.c l ton tt2 n;t l l cc ton h'ng2
bit /ng cc ton tt c &7ng t/ong biu thJc l= U ( a ^
Cmk
K thut lp trnh Cmm
K thut lp trnh
O$M ?$M
Mr6e i G'y M6e QL ?i T`06r((((((((((((((((((((((((((((((((((((((((((((((C
y! Dhi ni+m thut ton(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
y!C! Dhi ni+m((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
y!T! Mc tAnh ch5t >c t/ng cK, thut ton ((((((((((((((((((((((((((((((C
y!g! ih<n lo'i(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
yy! O" t thut ton bng lu @ ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
yy!C! ?u @ (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
yy!T! Mc ku hi+u t/Pn lu @ ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C
yy!g! Ot -. 4A &$ biu &iIn thut ton bng lu @(((((((((((((((((T
yyy! MM 6e"6 6e8 ?i T`06r Mr)6e T`06r FMr(((((((((((m
yyy!C! 6g"n ng8 lp t/0nh((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((m
yyy!T! Mh)ng t/0nh &ch(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((s
Mr)6e T ?O _}Z6 Qy 6e"6 6e8 M ((((((((((((((((((((((((((((((((((((((((z
a eii thi+u ng"n ng8 M(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((z
y! MM Dry 6y+O M) H6((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((z
y!C! M5u t/;c c) bn cK, mt ch)ng t/0nh M((((((((((((((((((((((((((((z
y!T! Diu &8 li+u c) bn(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cg
y!g! Hin((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Ck
y!k rng((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((C{
y!m! ihp ton((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Tf
a [* chuyn kiu((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((T~
a OJc u tiPn cK, cc php ton(((((((((((((((((((((((((((((((((((((((((T~
y!s! Mhuoi((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gf
yy! Mc c5u t/;c iLu khin t/ong M((((((((((((((((((((((((((((((((((((((((((((((((gg
yy!C M5u t/;c tu9n t* V[:qu:nc:W (((((((((((((((((((((((((((((((((((((((((((((((gg
yy!T! M5u t/;c chNn(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gk
yy!T!C! ?+nh i :l-:((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gk
yy!T!T! ?+nh -]itchc,-:((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gm
yy!g! M5u t/;c l>p(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gz
yy!g!C! ?+nh ]hil:(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((gz
yy!g!T! ?+nh &o ]hil:(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((g{
yy!g!g! ?+nh o/((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((g~
a iht biu b/:,k2 continu:2 goto((((((((((((((((((((((((((((((((((((((((((((kf
Cms
K thut lp trnh
Hi tp(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((kC
yyy! rm ( G+ quy((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((km
yyy!C! rm((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((km
yyy!T! G+ qui V`:cu/-ionW(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((mT
yQ! [t/uctu/:(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((mk
yQ!C! Gnh ngh,((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((mm
yQ!T! Dh,i bo((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((mm
Q! y?Z((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ms
Q!C! il: 4qn bn(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ms
Q!T! il: nh ph<n Vl: c c5u t/;cW((((((((((((((((((((((((((((((((((((((((((((sC
Q!g! iht hi+n loi khi t/uy xu5t tp tin((((((((((((((((((((((((((((((((((((((((ss
Hi tp(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((sz
Mr)6e g! MM Tr}T T6 T`6 M5} T`;M F8 ?y+} O6es~
y! Ong kh"ng -p xp 4 thut ton t0m kim (((((((((((((((((((s~
t/Pn mng ch, c thJ t*
y!C! Ot -. khi ni+m 4L mng(((((((((((((((((((((((((((((((((((((((((((((((((((((s~
y!T! Thut ton t0m kim t/Pn mng ch, c thJ t*(((((((((((((((zC
yy! Mc thut ton -p xp(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((zg
yy!C! [p xp th:o ph)ng php Hubbl:[o/t(((((((((((((((((((((((((((zg
yy!T! [p xp th:o ph)ng php _uick[o/t(((((((((((((((((((((((((((((zm
yyy! T0m kim t/Pn mng | c thJ t*((((((((((((((((((((((((((((((((((((((((((((z~
yyy!C! T0m kim nh,nh bng ph)ng php l>p((((((((((((((((((((((((z~
yyy!T! ihp t0m kim nh ph<n((((((((((((((((((((((((((((((((((((((((((((((((((({f
yyy!g! ihp t0m kim nh ph<n + qui((((((((((((((((((((((((((((((((((({C
Hi tp((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({T
Mr6e k M6 T`Y Viy6TZ`W(((((((((((((((((((((((((((((((((((((((((((((((((({k
y! G6r 6erR((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({k
y!C! Dh,i bo((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({k
y!T! T/uyLn , ch# cho hm((((((((((((((((((((((((((((((((((((((((((((((((((((((({m
yy Mc php ton t/Pn bin con t/Y((((((((((((((((((((((((((((((((((((((((((((((((((({m
yy!C! Ton tt , ch# (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({m
yy!T! Ton tt ni &ung a (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({m
yy!g! ihp cng t/x bin con t/Y 4i mt -. nguyPn(((((((((((((((({s
yy!k! ihp gn 4 php -o -nh(((((((((((((((((((((((((((((((((((((((((((((((((((({s
yy!m! [* chuyn kiu((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({s
Cmz
K thut lp trnh
yy!s! Dh,i bo mt con t/Y hng 4 con t/Y ch# n .i tng
hng((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((({z
yyy! [* t)ng qu,n gi8, con t/Y 4 mng(((((((((((((((((((((((((((((((((((((((({z
yQ! Mon t/Y 4 chuoi(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~C
yQ!C! Dh,i bo(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~C
yQ!T! Xt mt -. 4A &$ 4L cc hm xt lu chuoi(((((((((((((((((((((((~C
yQ!g! Ong con t/Y ch# n chuoi((((((((((((((((((((((((((((((((((((((((((((((~g
Hi tp(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~m
Mr6e m MM Tr}T T6 T`6 M5} T`;M ((((((((((((((((((((((~s
FR6r [Mr ?y6 DT V?y6DZF ?y[TW!
y! Dhi ni+m(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~s
yy! Mc php ton t/Pn &,nh -ch liPn kt(((((((((((((((((((((((((((((((((((((((((((~z
yy!C! T'o &,nh -ch(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~z
yy!T! Mp nht &,nh -ch((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((~~
yy!g! Fuy+t &,nh -ch(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cff
yy!k! T0m kim(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cff
yy!m! [p xp((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CfC
Hi tp((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CfT
Mr)6e s cc thut ton t/Pn c5u t/;c c<(((((((((((((((((((((((((((((Cfk
y! ih<n lo'i c<y((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cfk
y!C! Ot -. khi ni+m c) bn((((((((((((((((((((((((((((((((((((((((((((((((((((((Cfk
y!T! Mch biu &iIn c<y(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cfs
y!g! Hiu &iIn thJ t* cc n;t t/ong c<y((((((((((((((((((((((((((((((((((Cfs
yy! M<y nh ph<n VHin,/y t/::W((((((((((((((((((((((((((((((((((((((((((((((((((((((Cfz
yy!C! Gnh ngh,(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((Cfz
yy!T! Mc php ton t/Pn c<y nh ph<n((((((((((((((((((((((((((((((((((CCf
C! T'o c<y(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CCf
T! Mp nht c<y((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CCT
g! Mc php &uy+t c<y((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CCs
yyy! c<y nh ph<n T0O DyO c<n bng VRQ?W(((((((((((((((((((((((((CCz
yyy!C! Gnh ngh,(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CCz
yyy!T! Mc php ton t/Pn c<y RQ?((((((((((((((((((((((((((((((((((((((((((((((CC{
yyy!T!C! ThPm n;t(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CC{
yyy!T!T! Mp nht c<y((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CTs
yyy!T!g! Mc php &uy+t c<y((((((((((((((((((((((((((((((((((((((((((((((((((((CTz
Hi tp((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((CT~
Cm{
T6I LI8 THO" KH$x
C! D thut lp t/0nh Tu/bo M Go
ih;c2 6guyIn ihi Dht2 C~~T
T' Oinh Mh<u2
6guyIn G0nh TP
. M5u t/;c &8 li+u Jng &$ng 6guyIn
r@ng Mh)ng C~~~
4 ci >t bng M
!. 6h8ng 4iPn ngNc D thut ohnH:ntl:y
lp t/0nh