Bai toan 1-99
1. Ca hàng bán hoa
Bài toán
Ti mt ca hàng người ta mun cm mt s loài hoa vào các chu hoa nh. Có tt c F loi hoa
và V chu hoa (F <= V).c chu hoa được đánh s t 1 đến V và xếp theo th t t trái sang
phi. Mi loài hoa cũng được đánh s t 1 đến F. Mi loài hoa ch được cm vào mt chu hoa và
phi tuân theo điu kin: vi i < j, loi hoa i phi phía trái ca loi hoa j, hay nói cách khác hoa i
đưc cm chu Vi và hoa j được cm chu Vj thì ta phi có Vi < Vj.
Ta có bng h s thm m ca vic cm hoa: Bng Aij vi 1 <= i <= F , 1 <= j <= V có ý nghĩa:
Nếu loài hoa i đưc cm vào chu j thì đạt đim thm m Aij. Ví d ta có bng h s thm m sau
đây:
u cu bài toán tìm mt phương án cm hoa sao cho đạt tng s đim thm m ln nht.
Hn chế k thut
1 <= F <= 100 vi F là s các loài hoa.
F <= V <= 100 vi V s các chu hoa.
-50 <= Aij <= 50 vi Aij là h s thm m thu đưc khi loài hoa i cm vào chu hoa j.
Input
Đầu vào là file text có tên flower.inp
Dòng đầu tiên ghi 2 s F,V
F dòng tiếp theo: mi dòng ghi V s nguyên, như- vy s Aij là s ghi v trí j ti dòng i +
1.
Output
Page 1
Bai Toan 3-99
3. Thành ph ngm
Bài toán
Bn đồ mt thành ph ngm được biu din bi mt lưi ô vuông. Các ô vuông m ký hiu là 'O',
các ô vuông tường ký hiu là 'W'. Bn s xut phát ti mt v trí được gi bi th tc (hàm s)
start. Bn s phi tìm hiu và di chuyn trong thành ph bi hai th tc (hàm s) lookmove.
m look(dir) vi dir ch hướng bao gm 'N', 'S', 'E' và 'W' ch ra các hướng Bc, Nam, Đông,
Tây. Hàm này s tr li các giá tr 'O' hay 'W' nếu ô bên cnh theo hướng dir có giá tr 'O' hay 'W'.
Bn s dùng th tc move(dir) để chuyn động sang các ô vuông bên cnh ca lưới. Tt nhiên bn
ch được phép đi vào các ô vuông m.
Nhim v ca bài toán phi tìm ra v trí xut phát ban đầu ca bn sau ít ln s dng hàm look
nht. Khi đã tìm thy bn phi thông báo chúng bng cách gi th tc finish (x,y) vi x, y to độ
ca v trí tìm đưc.
Hn chế k thut
3 <= U <= 100, U - chiu rng ca bn đồ.
3 <= V <= 100, V - chiu cao ca bn đồ tính theo các ô vuông.
Thành ph đưc bao ph xung quanh bi tường.
V trí trái dưới có to độ (1,1) và phi trên (U,V)
Input
D liu đầu vào là file text under.inp
- Dòng đầu tiên ghi 2 s U,V
- V dòng tiếp theo, mi dòng là U ký t bao gm 'O' hoc 'W' ch ra bn đồ ca thành ph,
Output
Không cn d liu ra file. Chương tnh phi kết thúc bng cách gi th tc (hàm) finish(x,y).
d
Page 1
Hướng dn cho chương tnh Pascal
Bn phi có dòng sau trong chương tnh:
uses undertpu;
Unit này cha các hàm và th tc sau:
Procedure start; {cn phi gi đầu tiên}
function look(dir: char):char;
procedure move(dir:char);
procedure finish(x,y:integer); {phi gi cui cùng }
Hướng dn cho chương tnh C/C++
Bn phi có dòng sau trong chương tnh:
#include "under.h"
Tp này cha các hàm sau:
void start(void); /* cn phi gi đầu tn */
char look(char);
void move(char);
void finish(int, int); /* phi gi cui cùng */
Khi to project có tên under, bn phi b sung vào project chương tnh ca bn và thư vin các
tương tác vi tên underobj.obj. Chú ý nên s dng mô hình b nh LARGE để dch chương trình.
Page 2
3
Trc nghim
Chương tnh ca bn ch đưc phép chy trong 5 giây.
Để đạt được đim ti đa A, s các ln gi hàm look, x, ca chương trình cn phi nh hơn hoc
bng M là s đ-a ra bi chương trình kim tra. Chú ý rng M được chn ln hơn minimum. S M
đưc chn không ph thuc vào hướng và th t ca vic tìm kiếm. Bn có th đạt đim khi s
ln gi hàm look ln hơn M như-ng nh hơn 2M. S đim đạt được s tròn s ca công thc
sau đây:
c li khác do chương tnh to ra đều s b 0 đim.
Th nghim chương trình
Để chy th chương trình, bn hãy to mt text file cón place.txt bao gm mt dòng có cha ta
độ ca mt v trí trên bn đồ. Bn hãy chy chương trình và xem kết qu trong tp result.txt. File
result.txt cha hai dòng, dòng đầu tiên ghi hai to độ x và y để gi th tc finish(x,y). Dòng th
hai ghi dòng ch "You used look nnn times" (Bn đã dùng hàm look nnn ln). Chú ý rng vic
th này ch kim tra tính tương thích ca chương trình vi các thư vin đưc to ra ch tuyt
nhiên không liên quan gì đến li gii thc s ca bài toán.
Page 3
Bai toan 2-99
2. Các mã n
Bài toán
t tp các mã, mi mã là mt t có phân bit ch in hoa và ch in thường ch bao gm các ch
cái tiếng Anh. Ta định nghĩa dãy ph ca mt là xâu ký tcha tt c các ch cái ca mã
đưc xut hin đúng theo th t và có ký t đầu tiên và cui cùng là ca mã. Ví d AuLvL là dãy
ph ca ALL. Hai xâu con đưc gi là không gi chng n nhau nếu v trí bt đầu ca xâu này
ln hơn v trí cui ca xâu kia hoc ngược li.
Cho trước mt văn bn text và mt tp hp các mã. Mt nghim ca bài toán là mt tp hp các
phn t, mt phn t bao gm mt mã và mt dãy ph ca mã đó thoã mãn các điu kin sau:
a) Các dãy ph trên là không gi chng lên nhau tng đôi mt.
b) Mi dãy phđộ dài <= 1000
c) Tng chiu dài ca các mã trong nghim trên cc đại.
Hn chế k thut
1 <= N <= 100, N- s các mã
Độ dài ln nht ca mt mã là 100 ký t
Văn bn có độ dài >= 1 và <= 1000000 ký t
Ta nói dãy ph C ca mã W là cc tiu phi nếu không có mt xâu con trái ( xâu con bt
đầu t ký t trái đầu tiên) thc s nào ca C là dãy ph ca W. Ví d AAALALdãy
ph cc tiu phi ca ALL, trong khi đó AAALALAL là dãy ph không cc tiu phi
ca ALL nó có xâu con trái thc s AAALAL là dãy ph.
c điu kin sau ca văn bn phi thon:
1. Vi mi v trí ca văn bn, s các dãy ph cc tiu phi cha v t này không vượt quá
2500;
2. S các dãy ph cc tiu phi không vượt quá 10000.
Input
Có hai file text: words.inptext.inp. File words.inp cha danh sách các mã, file text.inp cha
văn bn.
Dòng đầu tiên ca words.inp cha s N. N dòng tiếp theo cha các mã là mt xâu ký t
không cha du cách. Mi mã đưc đánh du t 1 đến N tuân theo th t được cho trong