SKKN sáng kiến kinh ngiệm giải các dạng bài toán liệt kê bằng phương pháp vét cạn sử dụng thuật toán quay lùi trong ôn luyện học sinh giỏi môn tin học

23 487 0
SKKN sáng kiến kinh ngiệm giải các dạng bài toán liệt kê bằng phương pháp vét cạn sử dụng thuật toán quay lùi trong ôn luyện học sinh giỏi môn tin học

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

S GIO DC V O TO THANH HểA TRNG THPT TRIU SN SNG KIN KINH NGHIM GII CC DNG BI TON LIT Kấ BNG PHNG PHP VẫT CN S DNG THUT TON QUAY LUI TRONG ễN LUYN HC SINH GII MễN TIN HC Ngi thc hin: Phm Th Biờn Chc v: Giỏo viờn SKKN thuc b mụn: Tin hc THANH HểA NM 2014 MC LC A T VN I Lý chn ti II Thc trng ca .3 III Mc ớch nghiờn cu .4 IV i tng v phm vi nghiờn cu B GII QUYT VN I C s lý lun .5 II Bin phỏp gii quyt Mt s khỏi nim .5 Mt s dng bi toỏn lit kờ .7 Mt s bi toỏn tham kho .19 III Kt qu thc nghim 19 C KT LUN V XUT 20 I Kt lun .20 II xut, kin ngh 20 A T VN I Lí DO CHN TI Trong thi i ngy nay, th gii ang din quỏ trỡnh tin hc húa nhiu lnh vc hot ng ca xó hi Tin hc phỏt trin nhanh nh v bóo v ó tr thnh mt ngnh khoa hc úng vai trũ quan trng khụng th thiu i vi s phỏt trin ca xó hi Nhiu quc gia ý thc c tm quan trng ca tin hc v cú nhng u t ln vo lnh vc ny c bit l lnh vc giỏo dc nhm o to mt i ng tri thc tr cú nn tng tin hc vng vng nhm ỏp ng nhu cu ngy cng cao ca xó hi T nm 2006 ngnh giỏo dc Vit Nam ó chớnh thc a b mụn tin hc vo trng THPT nhm mc ớch ph cp cỏc kin thc c bn v Tin hc, ngoi cũn giỳp hc sinh cú kh nng phõn tớch, tng hp, tru tng húa, khỏi quỏt húa , c bit l phỏt trin kh nng t Mun vy ngoi vic dy i tr, hng nghip v dy ngh cn to iu kin cho hc sinh cú nng khiu tin hc c phỏt trin kh nng lp trỡnh gii quyt tt cỏc bi toỏn cú th phỏt huy nhng ti nng tin hc thụng qua ụn luyn i tuyn hc sinh gii, ũi hi ngi dy phi tip cn vi nhiu dng bi toỏn khú v nm vng cỏc phng phỏp gii quyt bi toỏn ú Bi toỏn tin hc thng rt a dng v phc tp, mi bi toỏn cú th cú nhiu phng phỏp gii khỏc cú th la chn phng phỏp thớch hp cho bi toỏn, chỳng ta cú th phõn chia cỏc bi toỏn thnh cỏc dng bi toỏn tng quan v ch phng phỏp gii cho cỏc dng bi toỏn ú Bi toỏn lit kờ l mt nhng lp bi toỏn khú, thng xut hin cỏc thi hc sinh gii cp thnh ph, cp tnh hay cp quc gia Cú nhiu phng phỏp gii lp bi toỏn ny nhng phng phỏp vột cn l phự hp nht Chớnh vỡ vy nờn tụi chn ti: Gii cỏc dng cỏc bi toỏn lit kờ bng phng phỏp vột cn s dng thut toỏn quay lui ụn luyn hc sinh gii mụn Tin hc II THC TRNG CA VN Thun li Do s quan tõm v u t ca B giỏo dc v o to núi chung v ca trng THPT Triu Sn núi riờng, v c s vt cht mụn Tin hc ó cú phũng thc hnh hot ng tt, ngoi cũn cú mt s phũng mỏy chiu projector h tr cho giỏo viờn cụng tỏc ging dy Mc dự mụn Tin khụng phi l mụn trng im nhng rt c Ban giỏm hiờu quan tõm ng viờn v to mi iu kin cụng tỏc ging dy v ụn luyn i tuyn hc sinh gii cng nh cỏc cụng tỏc khỏc Trong quỏ trỡnh thc hin ti tụi ó c cỏc giỏo viờn t b mụn t v h tr rt nhiu giỳp tụi hon thnh ti Khú khn Ngụn ng lp trỡnh Pascal l mt mụn hc mi, cỏch hc cng hon ton mi, vỡ vy tip cn vi mụn hc ny a s hc sinh thy rt b ng Hc cỏc thao tỏc s dng hay dựng phng phỏp hc thuc lũng khụng cũn phự hp na Lỳc ny cỏc em cn phi hc cỏch t logic, tỡm thut toỏn, v vit nhng dũng lnh trờn mỏy tớnh chớnh xỏc n tng u chm, du phy Vi tõm lớ thụng thng cỏc em hc sinh coi tin hc l mụn ph khụng quan trng nờn nhiu em ch quan khụng dnh thi gian hc nờn khụng hiu bi v dn b mt cn bn õy cng l lớ m nhiu em b im kộm, thm l thi li, hc li b mụn tin hc mc dự cú th cỏc em hc rt gii cỏc mụn hc khỏc Chớnh vỡ xem mụn Tin l mụn ph nờn la chn i tuyn ụn thi hc sinh gii giỏo viờn chỳng tụi thng rt khú la chn c nhng hc sinh cú nng khiu thc s Cỏc dng bi toỏn lit kờ l nhng bi toỏn khú, nu ngi hc cú t cha tt thỡ ngi dy s rt khú khn quỏ trỡnh truyn t giỳp cỏc em cú th hiu c Kt qu ca thc trng Trc i vo nghiờn cu v thc hin ti ny, tụi thng hng dn hc sinh tip cn vi cỏc bi toỏn lit kờ bng cỏch cho bi v cỏch gii vi tng bi m khụng phõn chia thnh tng dng c th v thut toỏn tng quan cho tng dng, dn n hc sinh rt m h, khú hiu Kt qu kho sỏt quỏ trỡnh ging dy v thụng qua cỏc bi kim tra nh sau: Ni du n g cn n m bt S lng Nm c kin thc va hc 3/6 T vit li chng trỡnh ó c gii thiu 3/6 Vn dng kin thc ó hc lm tt cỏc 1/6 bi T l (%) 50% 50% 16,7% B GII QUYT VN I C S Lí LUN Bi toỏn lit kờ (hay cũn gi l bi toỏn cu hỡnh t hp) l nhng bi toỏn cho trc mt cỏc i tng, yờu cu cho bit cú bao nhiờu i tng tha nhng iu kin nht nh v ch rừ nhng cu hỡnh tỡm c tha nhng iu kin trờn Bi toỏn lit kờ gm cú dng: t hp, chnh hp lp v chnh hp khụng lp Trong ú dng bi toỏn chnh hp khụng lp thng hay xut hin nhiu nht cỏc bi toỏn tin hc S lc mt s kin thc i s t hp: Cho S l mt hu hn gm n phn t v s t nhiờn k Gi X l hp cỏc s nguyờn dng t n k: X= {1, 2, , k} T hp Mt t hp chp k ca n l mt k phn t ca n phn t Chng hn {1,2,3,4} cú cỏc t hp chp l: {1,2}, {1,3, {1,4}, {2,3}, {2,4}, {3,4} Vỡ hp cỏc phn t khụng phõn bit th t nờn {1,2} cng l {2,1} v ú, ta coi chỳng ch l mt t hp Vy s t hp chp k ca S gm n phn t l: Chnh hp lp Chnh hp lp chp k ca n l mt dóy k thnh phn, mi thnh phn l mt phn t ca n phn t, cú xột n th t v khụng yờu cu cỏc thnh phn khỏc S chnh hp lp chp k ca n phn t l nk Chnh hp khụng lp Khỏc vi chnh hp lp l cỏc thnh phn c phộp lp li, tc l cú th ging nhau, chnh hp khụng lp chp k ca n phn t cng l mt dóy k thnh phn ly t n phn t cú xột th t nhng cỏc thnh phn khụng c phộp ging Chng hn cú n ngi, mt cỏch chn k ngi xp thnh mt hng l mt chnh hp khụng lp chp k ca n S chnh hp khụng lp chp k ca n phn t l: n(n-1)(n-2)(n-k+1)= gii c bi toỏn lit kờ cn xỏc nh c thut toỏn tng quan trờn c s ú xõy dng c tt c cỏc cu hỡnh liờn quan Khi i vo gii quyt bi toỏn lit kờ, yờu cu cỏc cu hỡnh tỡm c khụng c lp li v khụng c b sút cu hỡnh no ỏp ng c yờu cu trờn thỡ phng phỏp vột cn s la chn thớch hp nht II BIN PHP GII QUYT VN Mt s khỏi nim 1.1 Vột cn Phng phỏp vột cn: l phng phỏp tỡm nghim ca bi toỏn bng cỏch xem xột tt c cỏc phng ỏn cú th i vi ngi, phng phỏp ny khụng kh thi vỡ s phng ỏn cn kim tra quỏ ln, nhng nh cú mỏy tớnh m rt nhiu bi toỏn c gii quyt bng phng phỏp ny *u im: - Luụn m bo tỡm nghim chớnh xỏc - ũi hi rt ớt b nh v ci t n gin * Nhc im: Thi gian thc thi rt ln, phc thng bc m 1.2 Quay lui (Backtracking) Trong nhiu trng hp, nghim ca bi toỏn l dóy cỏc phn t c xỏc nh khụng theo lut tớnh toỏn nht nh Mun tỡm nghim, phi thc hin tng bc theo dừi, tỡm kim tng phn t ca nghim Giỏ tr mi phn t cú th cú nhiu kh nng khỏc tỡm giỏ tr gỏn cho mi phn t, phi th cỏc kh nng cú th xem chỳng cú tha cỏc iu kin ca bi toỏn hay khụng gi l th ỳng/sai Nu cú mt la chn c chp nhn thỡ ghi nh cỏc thụng tin cn thit cỏc bc th tip theo.Trỏi li, nu khụng cú mt la chn no thớch hp thỡ lm li bc trc, xoỏ bt cỏc ghi nh v quay v chu trỡnh th vi cỏc la chn cũn li Hnh ng ny c gi l quay lui (Back tracking) v cỏc gii thut th hin phng phỏp ny gi l cỏc gii thut quay lui Tỡm mi nghim (gi l vột cn) bng cỏch tin dn, tỡm kim cỏc kh nng cú th chp nhn c cho tng phn t ca mt nghim v bit quay lui khụng th tin c na Khi mi phn t ca mt nghim ó c gỏn giỏ tr thỡ kt thỳc quỏ trỡnh tỡm mt nghim, chuyn sang tỡm nghim tip theo Do thut toỏn quay lui xõy dng trờn c s tỡm kim dn, kt qu sau hỡnh thnh t kt qu trc nờn cú th s dng cỏc hm v cỏc th tc quy thc hin Cú th so sỏnh cỏc nghim tỡm c tỡm nghim ti u 1.3 Thut toỏn quay lui Mụ hỡnh gii thut quay lui cú th mụ t nh sau: Procedure Try (i); Begin Vũng lp ca mi kh nng ca bc i Begin - Th chn mt c cho bc i - Nu c ny tha iu kin thỡ Begin + Lu trng thỏi ca bi toỏn + Xỏc nhn giỏ tr c cho bc i + Xỏc nhn trng thỏi mi ca bi toỏn sau chp nhn c + Nu l bc cui cựng thỡ hin nghim v tng bin m nghim Ngc li thỡ Try(i+1) +Tr li trng thỏi nh trc chp nhn c End; End; End; Hoc cú th vit di dng sau: Procedure Try (i); Begin +Nu l bc cui cựng thỡ hin nghim v tng bin m nghim Ngc li thỡ vũng lp ca mi kh nng ca bc i Begin - Th chn mt c cho bc i - Nu c ny tha iu kin thỡ Begin + Lu trng thỏi ca bi toỏn + Xỏc nhn giỏ tr c cho bc i + Xỏc nhn trng thỏi mi ca bi toỏn sau chp nhn c + Try(i+1) + Tr li trng thỏi nh trc chp nhn c End; End; End; Gi mó c th ca thut toỏn nh sau: Procedure Update; Begin count := count + 1; print(x); end; Procedure Try(i); Var j; Begin For j:=1 to m If then Begin X[i]:=a[j]; ; If i=n then Update Else Try(i+1); ; End; End; Procedure Search; Begin Try(1); End; Trờn õy l cỏc thut toỏn vột cn i vi bi toỏn tỡm mi cu hỡnh hay m s cu hỡnh Trong trng hp bi toỏn cn tỡm mt cu hỡnh, tỡm cu hỡnh ti u thỡ thut toỏn cng tng t, ch khỏc phn cp nht (Update) sinh c mt cu hỡnh mi Chng hn th tc Update i vi bi toỏn tỡm nghim ti u: procedure Update; begin If then best:=x; end; õy chỳng ta khụng xột vic ỏp dng phng phỏp vột cn s dng quy quay lui dựng cho cỏc bi toỏn n thun m trung vo cỏc bi toỏn tỡm cu hỡnh t hp, ti u t hp Mt s dng bi toỏn lit kờ (cu hỡnh t hp) Bi toỏn t hp yờu cu tỡm cỏc i tng x cú dng l mt vector tha cỏc iu kin sau: x gm k phn t: x=(x1,x2,,xn) Mi phn t xi cú th nhn mt cỏc i tng a1,a2,,an, x tha cỏc rng buc cú th cho bi hm logic G(x) Tựy tng trng hp bi toỏn cú th yờu cu tỡm mt nghim, tỡm tt c cỏc nghim hay m s nghim 2.1 T hp Bi toỏn t cho chỳng ta l hóy xỏc nh tt c cỏc t hp chõp k ca n phn t n gin ta ch xột bi toỏn tỡm cỏc t hp ca cỏc s nguyờn t n n i vi mt hu hn bt kỡ, bng cỏch ỏnh s th t ca cỏc phn t, ta cng a c v bi toỏn i vi cỏc s nguyờn t n n Nghim cn tỡm ca bi toỏn tỡm cỏc t hp chp k ca n phn t phi tho cỏc iu kin sau: L mt vector x =(x1,x2,xk) xi ly giỏ tr {1,2,n} Rng buc: xin then print else for j:=1 to begin x[i]:=d[j]; case j of 1: s:=s+i; 2: s:=s-i; end; try(i+1); case j of 1: s:=s-i ; 2: s:=s+i; end; end; 13 end; BEGIN Init; try(2); if dem=0 then writeln(f2,'Khong bieu thuc nao thoa man'); close(f1); close(f2); END 2.3 Chnh hp khụng lp Nghim ca bi toỏn tỡm cỏc chnh hp khụng lp chp k ca n s nguyờn t n n l cỏc vector x tho cỏc iu kin: x cú k thnh phn: x = (x1,x2,xk) Cỏc giỏ tr xi ly {1,2, n} Rng buc: cỏc giỏ tr xi ụi mt khỏc nhau, tc l xixj vi mi ij Chnh hp khụng lp yờu cu cỏc phn t phi khỏc m bo iu ú, ngoi mng x, ta s dựng thờm mt cu trỳc d liu na l mng d ỏnh du Khi mt giỏ tr c chn, ta ỏnh du giỏ tr ú, v chn, ta ch chn cỏc giỏ tr cha ỏnh du Mng d s l "trng thỏi" ca thut toỏn Bn c xem phn gi mó di õy thy rừ hn ý tng ú procedure Try(i); var j; begin for j := to n if d[j]=0 then begin x[i] := j; d[j] := 1; if i=k then Print(x) else Try(i+1); d[i] := 0; end; end; Vớ d 1: Lit kờ cỏc hoỏn v ca n s nguyờn dng u tiờn *Phõn tớch Núi mt cỏch trc quan thỡ hoỏn v ca n phn t l phộp thay i v trớ ca n phn t Vớ d vi N=3 ta cú cỏc hoỏn v sau: 123, 132, 213, 231, 312, 321 * Chng trỡnh Program Hoanvi; uses crt; const max = 20; input='HOANVI.INP'; 14 output='HOANVI.OUT'; var n : integer; x,d : array[1 max] of integer; f1,f2: text; procedure readfile; begin clrscr; assign(f1,input); reset(f1); assign(f2,output); rewrite(f2); readln(f1,n); writeln(f2,'Cac hoan vi cua day ',n ,' so:'); end; procedure print; var i : integer; begin for i := to n write(f2,x[i]); writeln(f2); end; procedure try(i:integer); var j : integer; begin for j := to n if d[j] = then begin x[i] := j; d[j] := 1; if i = n then Print else try(i+1); d[j] := 0; end; end; BEGIN readfile; try(1); close(f1); close(f2); END 15 Cõy tỡm kim quay lui nh sau: Try(1) Try(2) Try(3) 123 Try(2) Try(3) Try(2) Try(3) Try(3) Try(3) 132 213 231 312 Try(3) 321 Vớ d 2: Bi toỏn xp hu Cho bn c vua nxn Hóy xp n hu lờn bn c cho khụng no khng ch no Hai hu khng ch nu chỳng trờn cựng mt hng, mt ct hoc mt ng chộo *Phõn tớch chuyn bi toỏn ny v dng chun ca bi toỏn tỡm cu hỡnh t hp, ta cú cú nhn xột: mi hu phi trờn mt hng v mt ct Do ú ta coi hu th i hng i v nu bit x[i] l ct t hu th i thỡ ta suy c li gii Vy nghim ca bi toỏn cú th coi l mt vector x gm n thnh phn vi ý ngha: Con hu th i c t hng i v ct x[i] x[i] ly giỏ tr {1,2n} Rng buc: cỏc giỏ tr x[i] khỏc tng ụi mt v khụng cú hu trờn cựng mt ng chộo Khỏc vi nhng bi toỏn sinh cỏc cu hỡnh n gin phn trc, sinh cỏc cu hỡnh ca bi toỏn xp hu ũi hi nhng phõn tớch chi tit hn v cỏc iu kin rng buc Rng buc th nht l cỏc giỏ tr x[i] phi khỏc Ta cú th dựng mt mng ỏnh du nh thut toỏn sinh hoỏn v m bo iu ny Rng buc th l cỏc hu khụng c nm trờn cựng mt ng chộo chớnh v ph Cỏc bn cú th d dng nhn rng v trớ (x 1,y1) v (x2,y2) nm trờn cựng ng chộo chớnh nu: 16 x1y1=x2y2=const Tng t, v trớ (x1,y1) v (x2,y2) nm trờn cựng ng chộo ph nu: x1+y1=x2+y2=const Do ú, hu i t ti v trớ (i,x[i]) v hu j t ti v trớ (j,x[j]) phi tha rng buc: ix[i] jx[j] v i+x[i] j+x[j] vi mi ij Ta cú th vit riờng mt hm Ok kim tra cỏc rng buc ú Nhng gii phỏp tt hn l dựng thờm cỏc mng ỏnh du mụ t rng mt ng chộo chớnh v ph ó cú mt hu khng ch Tc l ta c hu i v trớ (i,j), ta s ỏnh du ng chộo chớnh i-j v ng chộo ph i+j Nh vy v cu trỳc d liu, ta dựng mng: - Mng x vi ý ngha: x[i] l ct ta s t hu th i - Mng cot vi ý ngha: cot[j]=true nu ct j ó cú mt hu c t, ngc li thỡ cot[j]=false - Mng dcc vi ý ngha: dcc[k]=true nu ng chộo chớnh th k ó cú mt hu c t, tc l ta ó t mt hu ti v trớ (i,j) m ij=k; ngc li thỡ dcc[k]=false - Tng t ta dựng mng dcp vi ý ngha: dcp[k]=true nu ng chộo ph th k ó cú mt hu c t * Chng trỡnh Program Queens; const InputFile = 'QUEENS.INP'; OutputFile = 'QUEENS.OUT'; max = 100; var n: Integer; x: array[1 max] of Integer; cot: array[1 max] of Boolean; dcp: array[2 * max] of Boolean; dcc: array[1 - max max - 1] of Boolean; f1,f2: Text; procedure Init; begin Assign(f1, InputFile); Reset(f1); Assign(f2, OutputFile); Rewrite(f2); ReadLn(f1, n); FillChar(cot, SizeOf(cot), false); FillChar(dcp, SizeOf(dcp), false); FillChar(dcc, SizeOf(dcc), false); end; 17 procedure Print; var i: Integer; begin for i := to n Write(f2, '(', i, ', ', x[i], '); '); WriteLn(f2); end; procedure Try(i: Integer); var j: Integer; begin for j := to n if not cot[j] and not dcc[i-j] and not dcp[i+j] then begin x[i] := j; cot[j]:=true; dcc[i-j]:=true; dcp[i+j]:=true; {ghi nhn trng thỏi mi} if i=n then print else Try(i+1); cot[j]:=false; dcc[i-j]:=false; dcp[i+j]:=false ;{phc hi trng thỏi c} end; end; BEGIN Init; Try(1); Close(f1); Close(f2); END Vớ d Tỡm ng i ngn nht: Cú n thnh ph, a[i,j] l chi phớ di chuyn t thnh ph i n thnh ph j (Nu khụng cú ng i thỡ a[i,j] = 0) Mt ngi mun i du lch qua tt c cỏc thnh ph, mi thnh ph mt ln ri tr v ni xut phỏt cho tng chi phớ l nh nht Hóy xỏc nh mt ng i nh vy *Phõn tớch Phng ỏn ti u ca bi toỏn cng l mt vector x, ú xi l thnh ph s n thm ti ln di chuyn th i Cỏc iu kin ca x nh sau: x = (x1,x2,xn) xi ly giỏ tr {1,2,n} Rng buc: xi xj vi mi ij v a[xi,xi+1]>0 vi mi i=1,2, n, coi xn+1=x1 n a[ x , x i i +1 ] f(x) = Trong ú: - mng x[i]: ghi li hnh trỡnh i =1 18 - Mng a[i,j]: chi phớ i t thnh ph i n thnh ph j - Mng d[i]: ỏnh du thnh ph ó i thm, d[i]=true nu ó i thm thnh ph i Mi phng ỏn ca bi toỏn ngi du lch l mt hoỏn v ca n thnh ph Vỡ phng ỏn l mt chu trỡnh nờn ta cú th coi thnh ph xut phỏt l thnh ph * Chng trỡnh program Travelling; const Input = 'TOUR.INP'; Output = 'TOUR.OUT'; max = 100; var A: array[1 max, max] of Integer; X, Best : array[1 max + 1] of Integer; D: array[1 max] of Boolean; m, n: Integer; Min: Integer; procedure Readfile; var i, j, k: Integer; f: Text; begin Assign(f, Input); Reset(f); ReadLn(f, n, m); for i := to n for j := to n a[i, j] := ; for k := to m begin ReadLn(f, i, j, a[i, j]); a[j, i] := a[i, j] ; end; Close(f); end; procedure Init; begin FillChar(D, n, false); d[1] := False; X[1] := 1; Min:= maxint; end; 19 procedure Print; var i: Integer; f: Text; begin Assign(f, Output); Rewrite(f); for i := to n Write(f, Best[i], '->'); WriteLn(f, 1); WriteLn(f, 'Hanh trinh ngan nhat: ', Min); Close(f); end; procedure update; var s,i:integer; begin s:=a[x[n],1]; for i:=1 to n-1 s:=s+a[x[i],x[i+1]]; if sn then update else for j := to n if not d[j] and (a[x[i-1],j]>0 ) then begin X[i] := j; d[j] := true; Try(i + 1); d[j] := false; end; end; BEGIN Readfile; Init; Try(2); 20 Print; END Mt s bi toỏn tham kho Bi Cho hỡnh vuụng kớch thc NX N (2 N 5) Hóy in cỏc ch cỏi A,B,C,D vo cỏc ụ cho trờn mi dũng cng nh mi ct mi ch cỏi ch xut hin mt ln Hi cú bao nhiờu cỏch xp Bi Bi toỏn mó i tun: Cho bn c kớch thc NxN Ta mi ụ ca bn c l (x,y) vi x l s hiu dũng, y l s hiu ct Mt quõn mó ang ụ (x, y), hóy tỡm mt ng i ca quõn mó cho quõn mó i qua tt c cỏc ụ trờn bn c, mi ụ ch i qua ỳng mt ln Bi Cho N qu cõn cú cỏc lng tng ng l q1, q2,,qn (nguyờn) v mt cỏi cõn a Khi cõn cú th t mt s qu cõn v vt cn cõn trờn a no cựng c cho cõn thng bng Cho vt cú lng M, hi cú th cõn nú bng nhng qu cõn no? Bi Cú M loi tin cú giỏ tr ln lt l L1, L2,, Lm (nguyờn dng) vi s t mi loi l s1,s2,sm (nguyờn dng) Hóy tỡm cỏch i t tin cú mnh giỏ X thnh cỏc loi tin cú kho Bi Bi toỏn cỏi tỳi: Mt nh him cn em theo mt cỏi tỳi cú trng lng khụng quỏ b Cú n vt cn em theo vt th j cú trng lng l aj v giỏ tr s dng l cj (j = 1, 2, 3, ,n) Hi rng nh him cn em theo cỏc vt no cho tng giỏ tr s dng ca cỏc vt em theo l ln nht? Bi Một từ đợc gọi chân loại M, N đợc xây dựng từ tập hợp gồm M ký tự, có độ dài N từ liên tiếp giống Giả sử tập M={'1', '2', '3'} Ví dụ: 1232; 2123; 1231 từ chân loại 3,4; 1123;1212;1233 từ từ chân loại 3,4 III KT QU THC NGHIM Sau ỏp dng ti quỏ trỡnh ụn thi i tuyn, bng hỡnh thc giỏm sỏt, kim tra kt hp thc hnh tụi ó thu c nhng kt qu sau: Ni du n g cn n m bt S lng Hiu c kin thc va hc 6/6 T vit li chng trỡnh ó c gii thiu 6/6 Vn dng kin thc ó hc lm tt cỏc 4/6 bi T l (%) 100% 100% 67% 21 C KT LUN V XUT I KT LUN Phn ln cỏc bi toỏn lit kờ trng hp tng quỏt ch cú phng phỏp ti u nht l vột cn Tuy nhiờn, nhc im ca phng phỏp ny l phc tớnh toỏn rt ln hin tng bựng n t hp Trong mt s trng hp, ci tin phng phỏp ny, ngi ta t cỏc mt lc bng cỏch loi b hoc ch chn mt s hng i vic tỡm kim nhanh hn Do vy ti ny cú th phỏt trin thờm bng cỏch xột mt s phng phỏp ci tiờn khỏc nh k thut nhỏnh cn, phng phỏp quy hoch ng, phng phỏp tham lam, ti ny l mt phn kt qu ca quỏ trỡnh nghiờn cu v ụn luyờn i tuyn ca bn thõn tụi nhng nm qua Tụi mong rng ti ny cú th giỳp ớch cho mt s giỏo viờn cng nh hc sinh quỏ trỡnh ụn luyn i tuyn hc sinh gii ti cú th cũn nhiu thiu sút, mong c s gúp ý, b sung ca cỏc giỏo viờn t b mụn cng nh cỏc giỏo viờn khỏc ti cú th phỏt trin hon thin hn II XUT, KIN NGH *i vi cp trng - Cn lp t n phũng mỏy chiu c nh giỏo viờn ch ng hn cụng tỏc ging dy, - Cỏc mỏy tớnh phũng thc hnh hin ó c, cu hỡnh thp v thng hay h hng, cn nõng cp v u t thờm s lng mỏy hc sinh thc hnh tụt hn *i vi cp s - Cn t chc thờm mt s cuc thi thuc lnh vc tin hc, vớ d nh cuc thi Tin hc tr, Tin hc v nh trng, Thi son tho bn, to c hi cho cỏc em hc sinh phỏt trin kh nng tin hc - Cn quan tõm v u t thờm c s vt cht cho b mụn tin hc nh mỏy chiu a nng, phũng thc hnh, - Cn tng thờm s lng i thi hc sinh gii tnh nhm mc ớch m rng tỡm kim, khai thỏc cỏc ti nng tin hc tr 22 TI LIU THAM KHO Gi i t hut v l p t rỡ nh( ebook) , t ỏc gi Lờ M i nh Hong, H s phm H Ni Ph ng phỏp gi i bi t oỏn t rong t i n hc, t ỏc gi Th.s T rn c Huyờn, NX B Gi ỏo dc Em t p l p t rỡ nh 2, tỏc gi Trn Hựng, NXB Gi ỏo dc Mt s t i li u t ham kho qua i nt ernet XC NHN CA TH TRNG N V Thanh Húa, ngy 06 thỏng nm 2014 Tụi xin cam oan õy l SKKN ca mỡnh vit, khụng chộp ca ngi khỏc Ngi vit (Ký v ghi rừ h tờn) Phm Th Biờn 23

Ngày đăng: 23/10/2016, 12:32

Từ khóa liên quan

Mục lục

  • Ví dụ: Tìm các tổ hợp chập k của n

  • Ví dụ 1: Liệt kê dãy nhị phân độ dài n (n nguyên dương)

  • *Chương trình

  • Ví dụ 3. Tìm đường đi ngắn nhất:

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan