Tải bản đầy đủ (.doc) (65 trang)

Tài liệu ôn tập tin học lớp 12 kiểm tra, thi bồi dưỡng học sinh tham khảo (10)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (480.07 KB, 65 trang )

1. Điểm và tam giác
Cho tam giác có 3 đỉnh với tọa độ (x1, y1), (x2, y2), (x3, y3). Lập thuật toán cho biết điểm (x, y)
nằm trong hay ngoài tam giác.
2. Ba hình hộp
Cho 3 hình hộp với các cạnh (là số nguyên) a1>=b1>=c1, a2>=b2>=c2, a3>=b3>=c3.
Lập thuật toán cho biết 3 hình hộp trên có thể lập thành một hình lập phơng đợc không.
3. Số hạnh phúc
Lập chơng trình tính số vé hạnh phúc gồm 2n chữ số (các số vé ghi trong hệ cơ số 10), với định
nghĩa vé hạnh phúc là vé có tổng n số đầu bằng tổng n số cuối.
4. Tính 100!
Lập chơng trình tính 100!
5. Tính 7
50

Lập chơng trình tính 7
50
.
6. Bài toán "Tháp Hà nội"
Cho 3 cọc và n đĩa (lồng vào cọc) đặt ở cọc số 1 và theo thứ tự to dới nhỏ trên (xem hình vẽ).
Hãy chuyển n đĩa đó sang cọc số 3 sao cho thứ tự vẫn đợc bảo toàn. Đợc sử dụng cọc số 2 làm trung
gian và thỏa mãn yêu cầu khi chuyển thì chỉ cho phép đĩa bé đặt trên đĩa to. Mỗi lần đợc chuyển một
đĩa. Hãy lập chơng trình mô tả quá trình chuyển đổi đó.
7. Bài toán "8 Hậu"
Hãy lập chơng trình xếp 8 con hậu lên bàn cờ quốc tế sao cho không có hai con hậu nào ở tình trạng
đe dọa lẫn nhau.
8. Bài toán "Mã đi"
Hãy lập chơng trình di chuyển con mã trên bàn cờ n x n, xuất phát từ một vị trí nào đó sao cho nó di
qua mỗi ô đúng một lần và quay về ô xuất phát.
9. Tìm "giao điểm" của các hình chữ nhật
Trên mặt phẳng tọa độ cho n hình chữ nhật có các cạnh song song với các trục tọa độ. Hãy xây dựng
thuật toán để tìm số lớn nhất k thỏa mãn điều kiện: Tồn tại một điểm trên mặt phẳng nằm trong k


hình chữ nhật trên.
10. Dãy số gần nhau
Cặp 2 số a,b gọi là gần nhau nếu |a-b|<10. Dãy số a
1
, a
2
, , a
n
gọi là gần nhau nếu tồn tại một hoán
vị của dãy trên b
1
, b
2
, , b
n
sao cho các cặp số (b
1
, b
2
), (b
2
, b
3
), , (b
n-1
, b
n
) là gần nhau.
Hãy tìm thuật toán cho phép biết đợc rằng một dãy số cho trớc có phải là gần nhau hay không.
11. Đờng đi ngắn nhất

Cho một lới ô vuông kích thớc m x n (xem hình vẽ). Lập thuật toán tính số các đờng đi ngắn nhất từ
A đến B và chỉ đi trên các cạnh của lới.
12. Danh sách lớp
Lập chơng trình nhập từ bàn phím danh sách học sinh (vào cả Họ, Đệm và Tên)của một lớp (<100
hs) và sau đó in ra theo thứ tự từ điển tên của các học sinh đó,nghĩa là xếp theo thứ tự A, B, C của
tên trớc, họ và đệm sau.
13. Cộng - Trừ - Nhân - Chia
Lập chơng trình nhập từ bàn phím hai số tự nhiên m, n nhỏ hơn 1000000 và in ra kết quả số m x n,
m+n, m/n, m-n.
14. Dãy điểm gần nhau
Cho n điểm trên mặt phẳng. Hai điểm (ax, ay), (bx, by) đợc gọi là gần nhau nếu max(|ax-bx|,|ay-by|)
<10. Một dãy điểm đợc gọi là gần nhau nếu tồn tại một hoán vị của n điểm trên sao cho 2 điểm (bx
i
,
by
i
) và (bx
i+1
, by
i+1
) là gần nhau với i=1, 2, , n-1.
Hãy tìm thuật toán cho phép biết đợc rằng 1 dãy điểm cho trớc có phải là gần nhau hay không?
15. 4 hình chữ nhật
Cho 4 hình chữ nhật với các cạnh (a1, b1), , (a4, b4). Tìm thuật toán cho biết 4 hình này có thể
ghép lại thành một hình vuông hay không?
16. Hội bàn tròn
Có 2N ngời ngồi dự họp tại 1 bàn tròn. Biết rằng mỗi ngời trong số đó có không quá N-1 kẻ thù.
Tìm thuật toán sắp xếp 2N ngời này ngồi họp sao cho không có hai ngời nào là kẻ thù của nhau lại
ngồi cạnh nhau.
17. Bài toán "Luật chơi Đôminô"

Giả sử đã có 1 quân đôminô trên mặt bàn. Trò chơi đôminô thực hiện nh sau: Xếp một cách tuần tự
về 2 phía các quân bài (theo luật đôminô) cho đến khi không xếp đợc nữa. Lập thuật toán xác định
đợc cách chơi sao cho khi đã xếp xong, số quân trên tay có số điểm bé nhất.
18. Về một phân hoạch của hình chữ nhật
Cho hình chữ nhật ABCD. Trên các cạnh AB, CD cho các phân hoạch N điểm. Trên BC, AD cho các
phân hoạch M điểm. Nối lần lợt các điểm trên phân hoạch đối diện, theo thứ tự lần lợt. Biết rằng đ-
ờng nối các phân hoạch trên AB, CD sẽ song song với AD. Ta thu đợc một phân hoạch Q của hình
chữ nhật ABCD thành các hình tứ giác. Chỉ ra thuật toán tìm ra đợc hình tứ giác có diện tích lớn
nhất.
19. Dãy số xoáy Spiral
Lập chơng trình nhập dãy các số tự nhiên 1,2,3, ,N2 vào một mảng A[NxN]
theo chiều xoáy (spiral) nh hình vẽ.
20. Đếm hình chữ nhật
Trên giấy kẻ ca rô kích thớc 100 x 100 vẽ một số hình chữ nhật. Mỗi hình chữ nhật đợc tạo từ một
số các ô vuông. Các hình chữ nhật khác nhau thì rời nhau (không kề cạnh và đỉnh). Cho mảng kích
thớc 100 x 100 với điều kiện: Aij= 1 nếu ô (i,j) nằm trong một hình chữ nhật nào đó và Aij= 0 nếu
ngợc lại. Hãy lập chơng trình để tính số các hình chữ nhật có trên tờ giấy.
21. Bài toán "Mêcung"
Mêcung đợc cho bởi mảng A kích thớc N x N, Aij = 0 nếu vị trí (i,j) là "tự do", Aij = 1 nếu vị trí (i,j)
là "đóng kín". Từ vị trí ban đầu là một điểm tự do có thể dịch chuyển sang điểm "tự do" ở bên cạnh.
Nếu ra đợc điểm bên ngoài thì ta nói là có thể thoát khỏi Mêcung. Lập thuật toán cho phép biết đợc
rằng từ một điểm "tự do" có thể thoát khỏi Mêcung hay không.
Xem lời giải
22. Dãy sỏi 3 màu
Giả sử có dãy N hòn sỏi (N>3). Mỗi hòn sỏi có 1 trong 3 màu: Trắng, Xanh, đỏ. Viết thuật toán đổi
chỗ N hòn sỏi sao cho các hòn màu trắng đợc xếp đầu tiên, sau đó đến các hòn màu xanh, cuối cùng
đến màu đỏ.
23. Xâu nhị phân không lặp
Xâu nhị phân là xâu chỉ chứa các ký tự 0 và 1. Xâu nhị phân S đợc gọi là không lặp bậc k nếu mỗi
xâu con độ dài k của nó đều khác nhau từng đôi một (nghĩa là không có 2 xâu con độ dài k nào

giống hệt nhau). Xâu nhị phân không lặp bậc k đợc gọi là cực đại nếu việc bổ sung vào bên phải hay
trái của nó một ký tự 0 hoặc 1 sẽ phá vỡ tính không lặp bậc k của nó. Xây dựng thuật toán tìm một
xâu nhị phân cực đại không lặp bậc k có độ dài ngắn nhất (với k cho trớc).
Xem lời giải
24. Tính giá trị một biểu thức
Cho các số tự nhiên M, N (N>2) và mảng 3 chiều A(M,M,N-1). Tìm giá trị nhỏ nhất của tổng sau
đây: R = A(i
1
, i
2
, 1) + A(i
2
, i
3
, 2) + + A(i
N-1
, i
N
, N-1)
ở đây giới hạn đợc xét trên tập các dãy số nguyên 1<= i
1
,i
2
, i
N
<= M (không cho phép độ phức tạp
cỡ M x N).
Xem lời giải
25. Bài toán "Trộn mảng"
Cho 2 mảng số a1, aM và b1, bN thỏa mãn a1<=a2<=<=aM và b1<=b2<=<=bN. Lập chơng trình

trộn 2 mảng này và in ra mảng trộn: c1<= c2<= cM+N (không đợc sử dụng mảng độ dài lớn hơn
M + N)
Xem lời giải
26. Về mảng 2 chiều
Cho mảng 2 chiều A kích thớc M x M, các phần tử của nó bằng 0, 1, 5, 11. Tính số các phần tử Aij
sao cho các phần tử A
i,j
, A
i+1,j
, A
i,j+1
, A
i+1,j+1
là khác nhau.
Xem lời giải
27. Mô hình các điều kiện và hành động
Cho bảng T = (Tij) gồm m hàng và n cột (Tij = 0,1,2), m hàng sẽ xác định đợc m điều kiện logic C1,
C2, , Cm, n cột sẽ xác định đợc n "hành động" H1,H2, Hn.
Các điều kiện Ci xác định nh sau:
Nếu Tij = 1 thì Ci = True;
Nếu Tij = 0 thì Ci = False;
Nếu Tij = 2 thì Ci cha đợc xác định (hay nhận giá trị nào cũng đợc). Mỗi hành động Hj ứng với cột j
của T sẽ xác định một bộ các điều kiện (C1, C2, , Cm).
Bảng T gọi là mâu thuẫn nếu tồn tại một bộ điều kiện (C1, ,Cm) ứng với nhiều hành động khác
nhau. Bảng T gọi là đầy đủ nếu nó không mâu thuẫn và mọi bộ điều kiện (C1, ,Cm) sẽ ứng với một
hành động xác định (trong số các hành động H1, H2, , Hn).
1) Lập thuật toán và chơng trình kiểm tra xem bảng T cho trớc có mâu thuẫn không?
2) Lập thuật toán và chơng trình kiểm tra xem T có đầy đủ không?
Xem lời giải
28. Thuật toán sinh phân số tối giản

In ra theo trật tự tăng dần tất cả các phân số tối giản 0<m/n <1 với mẫu số <= 10.
Xem lời giải
29. Về một hàm đệ qui
Cho hàm F(n), n-nguyên >= 0 xác định nh sau:
f(0)=0, f(1)=1, f(2n)=f(n), f(2n+1) = f(n) + f(n+1)
Với N cho trớc, không dùng mảng độ dài N hãy lập thuật toán tính f(N).
Xem lời giải
30. Đờng đi hợp lệ
Cho lới N x M các đờng. Một đờng đi từ A đến B gọi là hợp lệ nếu nó không đi lại điểm đã đi qua.
Lập thuật toán và chơng trình tính số các đờng đi hợp lệ từ A đến B.
Xem lời giải
31. Bài toán đờng đi hợp lệ tổng quát
Cho lới ô vuông kích thớc M x N. Một đờng đi từ một điểm đến một điểm khác gọi là hợp lệ nếu nó
không đi lại điểm đã đi qua. Lập thuật toán và chơng trình tính số các đờng đi hợp lệ từ điểm A0 đến
điểm A1 nào đó trong lới.
Xem lời giải
32. Bài toán Hậu min
Tìm số con Hậu ít nhất xếp trên bàn cờ (8 x 8) sao cho chúng khống chế đợc tất cả các ô trên bàn
cờ.
Xem lời giải
33. Sắp xếp công việc trên 2 máy
Có n chi tiết máy phải gia công lần lợt ở 2 máy (1) và (2). Các thời gian gia công tơng ứng là t
i1
, t
i2
, i
= 1, 2, , n. Tìm cách sắp xếp thứ tự công việc để từ khi bắt đầu đến khi kết thúc chiếm thời gian là
ngắn nhất.
Xem lời giải
34. Tích hai ma trận nguyên

Cho ma trận vuông A(n x n) với các phần tử là các số nguyên. Tìm thuật toán cho phép biết rằng A
có phải là tích của 2 ma trận nguyên bậc n hay không?
Xem lời giải
35. Mô tả các phép toán trên số nguyên
Lập thuật toán và chơng trình mô tả các phép toán cộng, trừ, nhân, chia cho các số nguyên với độ
lớn tùy ý.
Xem lời giải
36. Kiểm tra tứ giác lồi
Cho 4 điểm A,B,C,D trên mặt phẳng. Tìm thuật toán xác định xem tứ giác ABCD có phải là tứ giác
lồi hay không? Tổng quát cho đa giác n đỉnh.
Xem lời giải
37. Dãy số độc lập nguyên tố
Dãy số tự nhiên a1, a2, an gọi là độc lập nguyên tố nếu tồn tại một hoán vị của nó: b1,b2, bn sao
cho các cặp (b1,b2), (b2,b3), (bn-1,bn) là nguyên tố cùng nhau.
Từ một tập các số tự nhiên cho trớc, xây dựng thuật toán lập một hệ cực tiểu các số tự nhiên, bao
hàm tập số trên và là độc lập nguyên tố.
Xem lời giải
38. Bao lồi
Cho n điểm A1 An trên mặt phẳng. Lập thuật toán cho biết đa giác lồi nhỏ nhất chứa các điểm
trên có bao nhiêu cạnh (ở đây nhỏ nhất đợc hiểu theo nghĩa là nó không chứa một đa giác lồi nào
cùng tính chất trên).
Xem lời giải
39. Bài toán "đổi màu bi"
Trên bàn có N1 hòn bi xanh, N2 hòn bi đỏ và N3 hòn bi vàng. Luật chơi nh sau:
Nếu 2 hòn bi khác màu nhau chạm nhau thì chúng sẽ cùng biến thành màu thứ 3 (ví dụ: xanh, vàng
> đỏ, đỏ).
Tìm thuật toán và lập chơng trình cho biết rằng có thể biến tất cả các hòn bi đó thành một màu đỏ có
đợc không.
Xem lời giải
40. Bài toán đổi màu bi Tổng quát

Điều kiện giống nh trong đề số 39. Tìm thuật toán biến số bi trên thành M1 hòn bi xanh, M2 hòn bi
đỏ, M3 hòn bi vàng (M1+M2 + M3 = N1 + N2 + N3).
Xem lời giải
41. Ma trận thuần nhất
Cho ma trận vuông Aij bậc n với tính chất sau:
1. Các số Aij = 0 hoặc Aij = 1.
2. Nếu Aij = 1 <=> Aji = 0 (i khác j).
Bộ 3 số tự nhiên (i,j,k) gọi là thuần nhất nếu Aij= Ajk= Aki
Với n cho trớc:
1) Lập thuật toán và chơng trình xác định ma trận A sao cho không tồn tại bộ thuần nhất nào.
2) Lập thuật toán và chơng trình xác định A với số cực đại các bộ thuần nhất và tính số cực đại đó.
Xem lời giải
42. Xác định các tứ giác đồng hồ trong ma trận
Cho ma trận vuông A[i,j] (i,j = 1, 2 n). Các phần tử của A đợc đánh số từ 1 đến n x n.
Gọi S là số lợng các "tứ giác" Ai,j; Ai,j+1; Ai+1,j; Ai+1,j+1 sao cho các số ở đỉnh của nó xếp theo
thứ tự tăng dần theo chiều kim đồng hồ (tính từ một đỉnh nào đó).
1) Lập chơng trình tính số lợng S.
2) Lập thuật toán xác định A sao cho số S là:
a. Lớn nhất.
b. Nhỏ nhất.
Xem lời giải
43. Bài toán "hậu" tổng quát
Trên bàn cờ n x n xếp số "hậu" lớn nhất Pk sao cho mỗi chúng đều khống chế đúng k "hậu" khác.
(Với n=8 kết quả nh sau: P0=8 (bài toán "hậu" cổ điển),
P1=10, P2=14, P3=18, P4=21).
Xem lời giải
44. Ma trận kỳ ảo bậc lẻ
Tìm thuật toán xây dựng ma trận kỳ ảo bậc lẻ n. Ma trận kỳ ảo là ma trận bao gồm các số từ 1 đến
nxn mà tổng các hàng, các cột và các đờng chéo đều bằng nhau.
Xem lời giải

45. Ma trận kỳ ảo
Tìm thuật toán xây dựng ma trận kỳ ảo bậc n bất kỳ.
Xem lời giải
46. Lịch tháng kỳ ảo
Lịch của các tháng đợc biểu diễn bằng một ma trận có số cột bằng 7 và số hàng nhỏ hơn hoặc bằng
6.
Ví dụ: Trong hình vẽ, lịch này thỏa mãn tính chất sau: Mọi ma trận con 3 x 3 không có ô trống đều
là ma trận "kỳ ảo" theo nghĩa: Tổng các số của mỗi đờng chéo bằng tổng của trung bình cộng của
tất cả các cột và hàng. Hãy xây dựng tất cả các lịch tháng có tính chất nh trên. Lập chơng trình mô
tả tất cả các khả năng xảy ra.
Xem lời giải
47. Các vòng tròn Olimpic
5 vòng tròn Olimpic chia mặt phẳng thành 15 phần (không kể phần vô hạn) (hình vẽ). Hãy đặt vào
mỗi phần đó một số sao cho tổng số các số trong mỗi vòng tròn bằng 39.
Lập chơng trình giải quyết bài toán trên và cho biết có bao nhiêu cách xếp nh vậy.
Xem lời giải
48. Về một ma trận số
Mô tả thuật toán, lập chơng trình xây dựng ma trận A[10 x 10] thoả mãn các tính chất:
1. Aij là các số nguyên từ 0 9
2. Mỗi số từ 0 9 đợc gặp 10 lần trong ma trận A .
3. Mỗi hàng và mỗi cột của A chứa không quá 4 số khác nhau.
Xem lời giải
49. Phân hoạch hình chữ nhật
Một hình vuông có thể chia thành nhiều hình chữ nhật có các cạnh song song với cạnh hình vuông
(xem Hình vẽ). Xây dựng cấu trúc dữ liệu và lập chơng trình mô tả phép chia đó. Tính xem có bao
nhiêu cách chia nh vậy.
50. Bài toán về dây xích
Giả sử hình vuông A chia thành n hình chữ nhật con P1, P2, Pn nh đã mô tả trong bài 49. Tập con
Q nằm trong [P1,P2 Pn] gọi là một dây xích nếu hình chiếu của chúng lên một trong các cạnh của
hình vuông là các đoạn thẳng không chồng lên nhau và phủ kín cạnh này của hình vuông.

1) Cho trớc 2 hình chữ nhật con Pi, Pj nào đó. Lập thuật toán và chơng trình để xác định một dây
xích chứa Pi, Pj (dây xích này bao giờ cũng tồn tại !).
2) Hãy tìm tất cả các dây xích chứa 2 hình Pi, Pj cho trớc.
3) Hãy chỉ ra một dây xích có độ dài cực đại.
4) Hãy chỉ ra một dây xích có độ dài cực tiểu.
Xem lời giải
51. Phân hoạch hình hộp chữ nhật
Cho một hình lập phơng. Có thể chia hình đó thành nhiều hình hộp chữ nhật có các cạnh song song
với các cạnh của hình lập phơng. Xây dựng cấu trúc dữ liệu và lập chơng trình mô tả phép chia đó.
Tính xem có bao nhiêu phép chia nh vậy.
Xem lời giải
52. Bài toán "đấu cờ"
Có 2n vận động viên đấu cờ. Mọi vận động viên cần đấu 1 lần với mỗi vận động viên còn lại. Tất cả
chỉ có n bàn cờ. Hãy lập lịch đấu cờ cho các vận động viên sao cho lúc nào cũng có đủ n đôi chơi
với nhau.
Xem lời giải
53. Bài toán "Bàn trà"
Có n ngời ngồi xung quanh một cái bàn tròn uống trà với nhau. Sau 1 phút lại có 1 cặp ngồi cạnh
nhau đổi chỗ cho nhau. Lập thuật toán và viết chơng trình cho phép sau một thời gian ngắn nhất tất
cả các cặp cạnh nhau đều đợc "đổi chỗ" cho nhau (nghĩa là khi đó tất cả những ngời ngồi bên trái
chuyển sang bên phải và ngợc lại).
Xem lời giải
54. Bảng số kỳ lạ Tổng quát
Dãy số tự nhiên khác nhau đôi một a, b, c, d, e, k đợc xây dựng từ biểu đồ thoả mãn tính chất:
Mỗi số bằng tổng của 2 số có mũi tên đến số đã cho (xem hình vẽ). Ví dụ: b = a+e, c = b+f,
Với số d cho trớc, xây dựng thuật toán cho phép thiết lập đợc biểu đồ đó.
Tính số d nhỏ nhất cho phép xây dựng biểu đồ trên.
Xem lời giải
55. Bảng số kỳ lạ tổng quát
Cho dãy số tự nhiên khác nhau từng đôi một a1, a2, an đợc xây dựng từ biểu đồ thoả mãn tính

chất: Mỗi số bằng tổng của 2 số có mũi tên đến số đã cho (hình vẽ).
Tìm số ak nhỏ nhất với n cho trớc.
56. Bài toán "Kangaroo"
Trên một lới N x N ô, Kangaroo có thể bớc nh sau: (x,y) _ (x+1, y-1) hoặc (x, y) _ (x-5, y+7) (nhng
không đợc ra khỏi lới).
Hãy xác định xem từ những điểm ban đầu nào, con Kangaroo có thể đi đến đợc tất cả các ô khác của
lới (không loại trừ trờng hợp đi lại các ô đã đi qua).
Xem lời giải
57. Xây dựng một lớp dãy nhị phân
Xây dựng chơng trình và thuật toán để thiết lập tất cả các dãy A1, A2, An (n -cho trớc) gồm các số
0,1 và thoả mãn điều kiện: A
1
.A
k+1
+ A
2
.A
k+2
+ + A
n-k
.A
n
là số lẻ với mọi k = 0, 1, , n-1 (đáp số có
thể là phủ định sự tồn tại của các dãy trên).
Xem lời giải
58. Dãy số tựa giao hoán
Viết chơng trình thực hiện các công việc sau:
1) Nhập hai số nguyên dơng m, n và n số nguyên a1, ,an.
2) Tìm và in ra trong dãy n số trên m số liên tiếp là hoán vị của m số tự nhiên đầu tiên. Nếu không
có m số liên tiếp nh vậy, hãy thông báo trên màn hình.

3) Tìm và in ra dãy con liên tiếp dài nhất của dãy a1, ,an mà dãy đó là dãy các số nguyên liên tiếp.
Xem lời giải
59. Bài toán "Tú lơ khơ 4 màu"
Có một tập bài 4n quân gồm n tờ màu xanh, n tờ màu đỏ, n tờ màu vàng, n tờ màu tím đợc xếp thành
một tập. Luật chơi là xáo bài trên tay, mỗi lần chơi đợc rời một phần bài liên tục lên đầu tập. Lập
thuật toán và chơng trình cho phép sau một số ít lần nhất xáo bài không có 2 quân bài nào cùng màu
liền nhau.
Xem lời giải
60. Hệ các tam giác cực tiểu
Trên mặt phẳng cho n điểm B1 Bn (tọa độ cho trớc). Một tam giác với các đỉnh trong B1 Bn gọi
là cực tiểu nếu nó không chứa một điểm nào khác của hệ này.
1) Lập thuật toán và chơng trình tìm ra một tam giác cực tiểu.
2) Tìm hệ cực đại các tam giác cực tiểu rời nhau.
Xem lời giải
61. Phép biến đổi trên bộ ba số
Trên bảng cho 3 số tự nhiên N1, N2, N3. Mỗi bớc đi đợc thực hiện nh sau:
Xoá đi 1 trong 3 số trên và thay thế số đó bằng tổng của 2 số còn lại trừ đi 1. Tìm thuật toán cho
phép biết rằng sau một số hữu hạn bớc có thu đợc bộ 3 số (A, B, C) cho trớc hay không nếu 3 số đầu
tiên là 2,2,2.
62. Tiếp tục phép biến đổi bộ 3 số
Trên bảng cho 3 số tự nhiên N1, N2, N3. Mỗi bớc đi đợc thực hiện nh sau:
Xoá đi 1 trong 3 số trên và thay thế số đó bằng tổng của 2 số còn lại trừ đi 1. Tìm thuật toán cho
phép biết rằng sau một số hữu hạn bớc có thu đợc bộ 3 số (A, B, C) cho trớc hay không nếu 3 số đầu
tiên là bộ (m, n, l) cho trớc.
Xem lời giải
63. Ma trận hoán vị
Lập chơng trình xây dựng ma trận A bậc NN thỏa mãn các điều kiện sau:
1. đối xứng: Aij = Aji.
2. Aii = 0, (i = 1, 2, n)
3. Mỗi hàng và mỗi cột của ma trận A đều là các hoán vị của dãy số 0, 1, 2, n-1.

Xem lời giải
64. Trò chơi Tích - Tắc vuông
Trên một lới kẻ ô vuông có 2 ngời chơi nh sau: Ngời thứ nhất mỗi lần chơi sẽ đánh dấu x vào 1 ô
trống. Ngời thứ hai đợc đánh dấu 0 vào 1 ô trống. Ngời thứ nhất muốn đạt đợc mục đích là đánh đợc
4 dấu x tạo thành 4 đỉnh của 1 hình vuông. Ngời thứ hai có nhiệm vụ ngăn cản mục đích đó của ngời
thứ nhất.
Lập chơng trình tìm thuật toán tối u cho ngời thứ nhất.
Chú ý: Lới ô vuông đợc coi là vô hạn về cả hai phía.
Xem lời giải
65. Trò chơi Tích - Tắc vuông tổng quát
Cách chơi tơng tự bài 64. điểm khác là ngời thứ hai có thể đánh dấu đồng thời đợc nhỏ hơn hoặc
bằng k ô trống (k>1). Tìm thuật toán tối u cho các ngời chơi.
Xem lời giải
66. Kim giờ và phút gặp nhau bao nhiêu lần trong ngày
Đồng hồ quả lắc có 2 kim: giờ và phút. Tính xem trong vòng 1 ngày đêm (từ 0h - 24h) có bao nhiêu
lần 2 kim gặp nhau và đó là những lúc nào.
Xem lời giải
67. Kim giờ, phút, giây gặp nhau bao nhiêu lần trong
ngày
Đồng hồ quả lắc có 3 kim: giờ, phút và giây. Tính xem trong vòng 1 ngày đêm (từ 0h - 24h) có bao
nhiêu lần 3 kim gặp nhau và đó là những lúc nào.
Xem lời giải
68. Về một bài toán và đồng hồ điện tử
Giờ của đồng hồ điện tử thông báo giờ và phút. Ví dụ: 02:51, 11:02. Lập chơng trình tính tổng số
thời gian trên mặt đồng hồ xuất hiện chữ số k (k = 0, 1, 9).
Xem lời giải
69. Chia nhóm công nhân
Có N công nhân phải sản xuất M sản phẩm. Mỗi sản phẩm phải lần lợt trải qua n công đoạn, mỗi
công đoạn tốn lần lợt t1, t2, ,tn thời gian. Cần sắp xếp N công nhân thành n tốp: N = A1 + A2+
+ An, mỗi tốp chuyên làm một công đoạn của sản phẩm. Mỗi công nhân chỉ làm đợc từng sản phẩm

một.
Hãy tìm cách chia N = A1 + + An thành n tốp sao cho công việc sẽ đợc diễn ra trong thời gian
nhỏ nhất.
Xem lời giải
70. Về một phép biến đổi trên lới số
Trên một lới N x N các ô đợc đánh số 1 hoặc -1. Lới trên đợc biến đổi theo quy tắc sau: Một ô nào
đó đợc thay thế bằng tích của các số trong các ô kề nó (kề cạnh). Lập chơng trình thực hiện sao cho
sau một số bớc toàn lới còn lại chữ số 1.
Xem lời giải
71. Khoảng cách giữa các ô cùng lới số tự nhiên
Các phần tử của ma trận A[NxN] là các số tự nhiên từ 1đN2. Khoảng cách giữa 2 ô Aij, Akl đợc tính
bằng max(|i-k|, |j-l|).
Tính số tự nhiên lớn nhất d thỏa mãn tính chất: Tồn tại một hoán vị các phần tử của A sao cho mỗi
phần tử của A đều dịch đi một khoảng cách lớn hơn hoặc bằng d.
Xem lời giải
72. Về một thuật toán sinh dãy số nguyên
Trên các máy vi tính 16 bit, thông thờng các số nguyên đợc hiểu nằm trong khoảng cách
-32768<= x <= 32767.
Hãy viết chơng trình sinh ra một dãy số nguyên dài nhất thỏa mãn điều kiện: Trong dãy này không
tồn tại một bộ 3 số nào là một cấp số cộng.
Xem lời giải
73. Trò chơi tô cạnh lới ô vuông
Trên mặt phẳng có một lới ô vuông n x n. Hai ngời chơi trò chơi sau: Mỗi ngời đến lợt mình đợc tô
lại cạnh của 1 ô vuông. Ngời thắng cuộc là ngời đầu tiên vẽ đợc một đờng kín (không đợc tô vào
cạnh đã tô). Xây dựng thuật toán tối u cho các ngời chơi.
Xem lời giải
74. Về trò chơi đảo tô cạnh lới ô vuông
Trên mặt phẳng có một lới ô vuông n x n. Hai ngời chơi trò chơi sau: Mỗi ngời đến lợt mình đợc tô
lại cạnh của 1 ô vuông. Ngời thua cuộc là ngời bắt buộc vẽ một đờng kín (không đợc tô vào cạnh đã
tô). Xây dựng thuật toán tối u cho các ngời chơi.

Xem lời giải
75. Phép biến đổi
Có n ngời ngồi xung quanh một bàn tròn. Mọi ngời đợc ghi lên trớc mặt mình một số 0 hoặc 1. Mỗi
bớc, hai ngời nào đó ngồi gần nhau có thể đồng thời tăng các số của mình lên 1 đơn vị. Cần chỉ ra
thuật toán cho phép sau một số hữu hạn phép chơi, tất cả mọi ngời đều có các số bằng nhau.
Xem lời giải
76. Trò chơi lập số chính phơng
Hai ngời chơi trò chơi sau:
Ngời thứ nhất viết lên bảng một chữ số (từ 0-9). Ngời thứ hai đợc viết thêm về bên trái hoặc phải 1
chữ số nữa. Cứ nh vậy Mỗi ngời đều cố gắng sao cho khi viết xong lợt mình số thu đợc sẽ là số
chính phơng.
Tìm thuật toán cho ngời đi nớc đầu tiên sao cho ngời thứ hai không bao giờ đạt đợc mục đích.
Xem lời giải
77. Lịch thi đấu bóng đá
Có 2N-1 đội bóng đá cần đấu loại vòng tròn với nhau. Mỗi đội bóng phải chơi với 2N-2 đội còn lại.
Cần xếp lịch thi đấu thành N vòng. Mỗi vòng có N-1 cặp đội đấu với nhau (nh vậy mỗi vòng sẽ có 1
đội đợc nghỉ). Lập chơng trình xếp lịch thi đấu sao cho mỗi đội sẽ đợc đấu N-1 lần ở sân nhà và N-1
lần ở sân khách.
Xem lời giải
78. 49 tù nhân
Có 49 tù nhân cần đợc giam trong 49 phòng, mỗi phòng là 1 hình vuông 1 x 1 đợc đặt trong 1 nhà tù
hình vuông 7 x 7. Biết rằng mỗi tù nhân có không quá 8 kẻ thù trong số các tù nhân khác. Hãy xếp
các tù nhân này sao cho không có 2 tù nhân nào là kẻ thù mà lại ở cạnh nhau (tức là chung tờng).
Xem lời giải
79. Bài toán tô màu chấp nhận đợc
Trên một lới vuông N x N đánh dấu tập M gồm hữu hạn điểm. Các điểm của M sẽ đợc đánh dấu bởi
một trong hai màu xanh và đỏ. Cách đánh màu đợc coi là chấp nhận đợc nếu trên mỗi đờng nằm
ngang hoặc thẳng đứng của lới số các điểm xanh và đỏ hơn kém nhau không quá 1.
Lập thuật toán xây dựng một cách tô mầu chấp nhận đợc cho tập M cho trớc.
Viết chơng trình liệt kê tất cả các cách tô màu chấp nhận đợc.

80. Về phép biến đổi 5 số
Có 5 ngời ngồi xung quanh một bàn tròn. Trớc mặt mọi ngời cho 1 số nguyên (tổng các số nguyên
này >0). Qui tắc chơi nh sau: Nếu có 3 số nguyên liên tiếp X, Y, Z sao cho Y<0 thì có thể thay thế 3
số này thành X+Y, -Y, Z+Y. Lập chơng trình kiểm tra xem quá trình này có kết thúc hay không và
tính ra số bớc đi ngắn nhất để kết thúc quá trình này.
Xem lời giải
81. Xếp ngời ngồi trên bàn tròn
Xung quanh một bàn tròn có 2N ngời ngồi: N nam, N nữ. Mỗi lần đổi có thể đổi chỗ đợc 2 ngời bất
kỳ. Xác định thuật toán tìm ra số bớc đổi ít nhất sao cho không có 2 ngời cùng giới ngồi cạnh nhau.
Xem lời giải
82. Hai hàng số kỳ ảo
Hãy xếp 2N số tự nhiên 1, 2, , 2N thành 2 hàng số:
A1, A2 An
B1, B2 Bn
Thỏa mãn điều kiện: Tổng các số theo n cột bằng nhau, tổng các số theo các hàng bằng nhau.
Xem lời giải
83. Thuật toán lan số trên mảng
Cho lới ô vuông n x m. Các ô vuông ở biên đã điền số -1. Các ô bên trong đợc điền tiếp các số 1,-1
theo qui tắc sau: điền vào một ô trống số bằng tích của 2 số khác 0 gần nhất theo hàng hoặc cột của
lới.
1) Lập chơng trình cho phép điền vào tất cả các ô còn lại cho đến khi công việc kết thúc. Sau đó in
ra số các số một có trong lới. Gọi số này là S.
2) Xây dựng thuật toán điền số sao cho S là nhỏ nhất.
3) Xây dựng thuật toán điền số sao cho S là lớn nhất.
Xem lời giải
84. Trò chơi "Phân rã số"
Trên bảng đen đợc viết một số tự nhiên n. Hai ngời chơi trò chơi sau: Ngời thứ nhất xóa số n và viết
vào đó hai số m, k sao cho m+k=n. Ngời thứ hai lại làm tơng tự đối với một trong hai số m, k. Cuộc
chơi dừng lại khi trên bảng còn toàn số 1.
Tìm thuật toán tối u trong hai trờng hợp:

1) Ngời thắng cuộc là ngời đi sau cùng.
2) Ngời thua cuộc là ngời đi sau cùng.
Xem lời giải
85. Thuật toán bẻ Sôcôla
Có một thanh Sôcôla kích thớc m x n đợc vạch thành m x n ô vuông nhỏ, mỗi ô kích thớc 1 x 1. Hai
ngời chơi nh sau: Ngời đầu tiên bẻ miếng Sôcôla làm 2 mảnh theo một đờng vạch. Ngời thứ hai làm
tơng tự với một trong hai mảnh Sôcôla còn lại. Tìm thuật toán tối u trong hai trờng hợp:
1) Ngời thắng cuộc là ngời đợc bẻ lần cuối.
2) Ngời thua cuộc là ngời đợc bẻ lần cuối.
(Cuộc chơi dừng lại khi còn lại toàn các ô vuông 1 x 1).
Xem lời giải
86. Bài toán "đẩy" bi
Trên một lới vuông N x N có một hòn bi tại ô vuông ở góc trái dới. Tọa độ các ô lới ký hiệu (i,j), vị
trí góc trái dới là (1,1). Mỗi bớc đi của luật chơi nh sau: Nếu hòn bi ở vị trí (i,j) mà tại các ô (i+1, j)
và (i, j+1) trống thì hòn bi này có thể cất đi và đặt vào hai ô (i+1, j), (i, j+1) hai hòn bi khác. Mục
đích chơi là làm sao "đẩy" các hòn bi càng xa gốc tọa độ càng tốt. Cụ thể là cần đẩy khỏi tam giác
vuông đỉnh ở gốc tọa độ và có cạnh d. Tìm thuật toán xác định số d lớn nhất sao cho có thể đạt đợc
mục đích.
Xem lời giải
87. Về các số 0 và 1 trong ma trận
Cần xếp vào các số 0, 1 vào ma trận A[M x N] với M x N chẵn, thỏa mãn các tính
chất sau:
1) Tổng số các số 0 và 1 trong toàn ma trận là bằng nhau.
2) Trên mỗi hàng và mỗi cột, tỉ số giữa số lợng các số 0 và 1 hoặc nhỏ hơn 1/4 hoặc lớn hơn 3/4.
Xem lời giải
88. Xây dựng số tự nhiên "ngoại đạo"
Cho trớc các số tự nhiên A1, A2, ,An. Lập chơng trình in ra số tự nhiên nhỏ nhất M không biểu
diễn dới dạng tổng của một hay nhiều số hạng trong dãy trên (mỗi phần tử chỉ đợc có trong một số
hạng của tổng mà thôi).
Xem lời giải

89. Các số lặp
Cho mảng A[1 N]. Lập chơng trình in ra số đợc lặp lại nhiều nhất trong mảng (ghi tất cả các số
nh vậy).
90. So sánh các tứ diện
Cho hai tứ diện đều bằng nhau. Trên các mặt của các tứ diện này theo cùng một thứ tự ghi các số
A1, A2, A3, A4 và B1, B2, B3, B4. Biết rằng B1, , B4 là một hoán vị của A1, A2, A3, A4. Lập thuật
toán và chơng trình cho phép biết đợc rằng có thể đặt hai tứ diện đó chồng khít vào nhau sao cho các
số trên các mặt trùng nhau của hai tứ diện đó là giống nhau.
Xem lời giải
91. Xây dựng các số tốt
Một số tự nhiên gồm 2m chữ số đợc gọi là "tốt" nếu tập hợp các chữ số có chỉ số chẵn và lẻ chứa số
các số chẵn và lẻ nh nhau. Ví dụ: số 2347169824 là số "tốt" vì tập các chữ số chỉ số chẵn và lẻ đều
chứa 3 số chẵn và 2 số lẻ.
Cho trớc một số có (2m+1) chữ số. Lập thuật toán để sau khi xóa đi một chữ số của nó, số này sẽ trở
nên "tốt". Lập đoạn chơng trình nhập từ bàn phím một số (2m+1) chữ số và biến đổi chúng thành số
"tốt". In ra kết quả.
Xem lời giải
92. Bài toán "điện thoại"
Có n điểm cho trớc (đó là n trạm điện thoại). Hai ngời chơi trò chơi sau: Mỗi ngời đến lợt mình đợc
phép nối dây của hai trạm điện thoại cha đợc nối dây. Ngời thắng cuộc là ngời mắc đợc đờng dây
cần thiết cuối cùng (nếu sau đó tất cả các trạm đều có thể nói chuyện đợc với nhau, dù có phải qua
các trạm trung gian). Tìm thuật toán tối u cho các ngời chơi.
Xem lời giải
93. Ma trận tựa kỳ ảo
Lập thuật toán điền vào ma trận A[N x N] các số tự nhiên khác nhau thỏa mãn điều kiện sau: Với
mọi k=2, 3, n, mọi ma trận con bậc k của A đều thỏa mãn tính chất: Tổng các số trên hai đờng
chéo bằng nhau (ma trận con hiểu là k hàng và cột liền nhau).
Xem lời giải
94. Các ma trận con kỳ dị
Lập thuật toán điền vào ma trận A[N x N] các số tự nhiên khác nhau thỏa mãn điều kiện sau: Với

mọi k=2, 3, n, mọi ma trận con bậc k của A đều thỏa mãn tính chất: Tích các số trên hai đờng
chéo bằng nhau (ma trận con hiểu là k hàng và cột liền nhau).
Xem lời giải
95. Ma trận hoàn chỉnh
Ma trận số A[M x N] gọi là "hoàn chỉnh" nếu nó không có hai hàng nào giống hệt nhau. Cho trớc
ma trận hoàn chỉnh A[M x N]. Lập thuật toán để sau khi xóa đi một cột nào đó, ma trận thu đ ợc vẫn
là hoàn chỉnh (chơng trình phải chỉ ra chỉ số cột cần phải xóa đi).
Xem lời giải
96. Hệ thống bóng điện kỳ ảo
Trên tờng treo n bóng điện, giữa một số cặp bóng điện có nối dây trang trí. Các bóng điện đợc thắp
sáng theo hai màu xanh và đỏ. Sau mỗi phút các bóng điện sẽ đợc thay đổi màu theo nguyên tắc sau:
Xét bóng điện A và tập DA các bóng điện của hệ thống có nối dây với A. Bóng điện A sẽ đổi màu
nếu nh quá một nửa các bóng của DA khác màu với A (không đổi màu nếu ngợc lại). Ngời ta đã
quan sát đợc sau một khoảng thời gian nào đó toàn cảnh bóng điện sẽ có hiện tợng sau: Một số bóng
điện sẽ dừng lại không đổi mầu nữa, còn một số bóng điện khác sẽ đổi màu liên tục sau mỗi bớc.
Lập chơng trình để tính số thời gian đó.
Xem lời giải
97. Về một ma trận kỳ lạ
Điền vào ma trận m x n (m hàng, n cột) các số tự nhiên từ 1, 2, m x n sao cho tổng số các số trong
các cột của ma trận là nh nhau (làm đợc khi m chẵn hoặc n x m lẻ).
Xem lời giải
98. Tìm cách đi tối u cho con xe
Trên bàn cờ ô vuông n x m, góc trái dới cùng có một con xe. Hai ngời lần lợt đi con xe đó. Qui tắc
chỉ cho phép đi lên hoặc về bên phải (quãng đờng tùy ý). Ngời thua cuộc là ngời phải đi nớc cuối
cùng. Lập thuật toán tối u.
99. Bài toán "Thủy chiến"
Trên một lới ô vuông NxN, một ngời đánh dấu lên đó (một cách bí mật) một số "tàu chiến" dạng
1xk, các tàu chiến này phải rời nhau. Ngời thứ hai "thả bom" tại từng ô vuông và sau một lần đánh
bom thu đợc câu trả lời: "trúng" hoặc "trợt". Tìm thuật toán tối u cho ngời thứ hai để xác định đợc vị
trí tàu.

Xem lời giải
100. Lại về bài toán thuỷ chiến khác
Trên một lới ô vuông N x N, một ngời đánh dấu lên đó (một cách bí mật) một số "tàu chiến" dạng
1x N, các tàu chiến này phải rời nhau. Ngời thứ hai đánh một loạt "bom" tại từng ô vuông và sau
một lần đánh bom thu đợc câu trả lời: "trúng" hoặc "trợt". Tính xem ngời thứ hai phải đánh nhiều
nhất là bao nhiêu bom để biết đợc vị trí tàu.
Xem lời giải
101. Điền dấu cho biểu thức
Cho trớc các số tự nhiên A1, A2, An sao cho Ai <= n. Hãy tìm các dấu (+), (-) thay thế vào các vị
trí có dấu (*) tơng ứng trong biểu thức * A1 * A2 * * An sao cho giá trị của biểu thức này bằng 0.
Chơng trình phải tìm ra đợc lời giải hoặc phủ định cách tìm.
102. Bài toán "Trộn bài"
Các quân bài đợc đánh số từ 1 đến n đợc xếp lại thành một tập (nh bộ tú lơkhơ và tam cúc). Một
phép trộn hay xáo bài cho phép: Lấy từ mặt trên một số bất kỳ quân bài, sau đó không đổi thứ tự có
thể nhét hoặc đút vào bất kỳ khe nào của chỗ bài còn lại. Cho phép đút vào một hoặc nhiều khe, chỉ
yêu cầu khônglàm thay đổi thứ tự của tập đợc đút và tập bài bị đút vào (giống nh trộn bài bình th-
ờng). Hỏi sau ít nhất bao nhiêu phép trộn nh vậy, các quân bài sẽ đợc xếp lại theo thứ tự.
103. Trò chơi "Hai đống sỏi"
Có hai đống sỏi, mỗi đống n hòn sỏi. Hai ngời lần lợt lấy 1 hoặc nhiều hònsỏi từ một đống nào đó.
Ngời thắng cuộc là ngời nhặt đợc viên sỏi cuối cùng. Tìm thuật toán tối u cho các ngời chơi.
104. Trò chơi hai đống sỏi tổng quát
Có hai đống sỏi, mỗi đống n hòn sỏi. Hai ngời lần lợt lấy 1 hoặc nhiều hòn sỏi từ một đống nào đó.
Nhng khi lấy sỏi đi không đợc phép để lại 2 đống có số sỏi nh nhau. Ngời thắng cuộc là ngời nhặt đ-
ợc viên sỏi cuối cùng. Tìm thuật toán tối u cho các ngời chơi.
105. Bài toán chia kẹo
Có 2 đống kẹo, mỗi đống 12 cái. Hai ngời lần lợt làm các bớc sau: Chuyển 1 cái kẹo từ đống này
sang đống kia và ăn 2 cái kẹo từ một đống nào đó. Ngời đi sau cùng là ngời thắng cuộc. Tìm thuật
toán tối u.
106. Trò chơi Gelfand
Bàn cờ kích thớc n x n đặt chéo. Một con tốt nằm ở đỉnh dới. Hai ngời lần lợt đẩy con tốt đi một n-

ớc. Không đợc đi lùi lại. Ngời đầu tiên đặt đợc con tốt sang đầu ngợc lại là ngời thắng cuộc. Tìm
thuật toán tối u cho ngời đi nớc đầu tiên.
107. Tô màu lới ô
Một lới ô vuông N x N. Các ô đợc tô màu đỏ hoặc xanh. ô đợc gọi là đặc biệt nếu màu của nó trùng
với 1/2 các ô xung quanh (kể cả các ô chung đỉnh). Lập thuật toán tô màu sao cho số các ô đặc biệt
là lớn nhất.
108. Bài toán tìm đờng đi ngắn nhất trên lới - tổng quát
Cho lới ô vuông M x N. Mỗi mắt lới đợc đánh một số. Tìm đờng đi "ngắn nhất" từ A đến B (A, B là
2 nút lới và đờng đi trên các cạnh của lới), nghĩa là đờng đi mà tổng các số trên đờng đi là bé nhất.
109. Tính số các hình chữ nhật cùng màu
Một lới ô vuông N x N các ô vuông đợc tô bởi m=2 màu. Lập chơng trình tính số các hình chữ nhật
nằm bên trong lới mà đỉnh của chúng nằm trong 4 ô có màu nh nhau.
110. Bài toán hình chữ nhật cùng màu - Tổng quát
Một lới ô vuông N x N các ô vuông đợc tô bởi m màu. Lập chơng trình tính số các hình chữ nhật
nằm bên trong lới mà đỉnh của chúng nằm trong 4 ô có màu nh nhau.
111. Tô màu các hình chữ nhật trên lới
Một lới ô vuông N x N các ô vuông đợc tô bởi m màu. Lập thuật toán tô màu sao cho số các hình
chữ nhật nằm bên trong lới mà đỉnh của chúng nằm trong 4 ô có màu nh nhau là:
a. Cực đại.
b. Cực tiểu.
112. Bài toán che mắt mèo
Trên bàn cờ ô vuông N x N tại mỗi ô có thể xếp hoặc một con mèo con, hoặc một quân cờ. Hai con
mèo trên bàn cờ sẽ nhìn thấy nhau nếu trên đờng thẳng nối chúng theo hàng ngang, hàng dọc hay đ-
ờng chéo không có quân cờ nào cả. Hãy tìm cách xếp mèo và quân cờ nh trên cho số mèo lớn nhất
và không có hai con mèo nào nhìn thấy nhau.
113. Ma trận lặp
Một lới ô vuông N x N các ô đợc điền các số nguyên sao cho 2 số ở hai ô chung cạnh với nhau sẽ
hơn kém nhau không quá 1. Ta nói lới trên có mức lặp bằng k nếu tồn tại một số nguyên đợc lặp lại
trên lới k lần và điều này không thoả mãn với k+1. Rõ ràng độ lặp lớn nhất bằng N
2

khi tất cả các số
trong lới là nh nhau. Tìm cách xếp số sao cho nó có mức lặp là ít nhất.
114. Dãy số đặc biệt
Từ dãy số 1, 2, 3, , 1995 hãy xóa đi một số lợng ít nhất các số sao cho trong dãy số còn lại không
tồn tại bộ 3 số nào mà một trong chúng bằng tích hai số còn lại.
115. Dãy con đặc biệt
Cho trớc dãy số thực: A1, A2, An (1)
Hãy chọn ra từ (1) dãy con: B1, B2, Bm (2) thỏa mãn điều kiện sau:
1) Không có 3 số hạng liền nhau nào của (1) nằm trong (2).
2) Trong 3 số hạng liên tiếp bất kỳ của (1) có ít ra là một số nằm trong (2).
3) Tổng trị tuyệt đối các số của dãy (2) lớn hơn 1/6 tổng trị tuyệt đối các số của dãy (1).
116. Về một ma trận hầu hết 0
Cho ma trận vuông A bậc n x n. Các phần tử của A gồm n-1 số 1 và còn lại là số 0. Lập thuật toán để
sau khi đổi chỗ một số hàng và cột, ma trận A sẽ thỏa mãn điều kiện: các số 1 đều nằm dới đờng
chéo chính.
Tối u bài toán theo nghĩa số phép biến đổi là nhỏ nhất.
117. Ma trận đối xứng liên thông
Ma trận vuông A bậc n x n có các phần tử là các số 0, 1, 2 thỏa mãn:
1) đối xứng.
2) Nếu i = j thì Aij = 0.
Ma trận A gọi là "Liên thông" nếu với mọi i <> j, tồn tại k sao cho i <> k, k <> j và Aik = Akj = 0.
Lập chơng trình để thực hiện các việc sau:
Kiểm tra xem A có là liên thông hay không?
Trờng hợp A không là liên thông hãy tìm cách biến đổi một số ít nhất các số 1 hoặc 2 thành 0
sao cho A trở thành liên thông.
118. Ma trận Mê cung
Ma trận A bậc N x N đợc gọi là "Mê cung" nếu:
1) Các phần tử là 0, 1, -1.
2) Phản đối xứng.
3) Với mọi i, tồn tại dãy k, l, s sao cho:

Aik = Akl = = Asi = 1
Lập thuật toán xây dựng ma trận "Mê cung".
119. Bài toán "Mê cung" tổng quát
Trên bàn cờ ô vuông M x N các ô đợc đánh dấu 0 là các ô tự do, các ô đợc đánh dấu 1 là các ô có
mìn. Tìm đờng đi ngắn nhất giữa 2 điểm tự do A, B cho trớc của "Mê cung".
120. Dãy số hoàn toàn không công bằng
Hãy xếp các số 1, 2, 3, n thành một dãy A1 A2 An (1)
sao cho với mọi i, j (i < j), giữa các số Ai, Aj trong dãy (1) không có số nào bằng: (Ai + Aj)/2
121. Tập hợp điểm đủ loãng
Một tập các điểm trên mặt phẳng gọi là thỏa mãn tính chất T nếu:
a) Không có 3 điểm nào thẳng hàng.
b) Bất cứ 3 điểm nào của tập trên cũng tạo thành tam giác tù.
Tìm thuật toán cho phép từ một tập hữu hạn các điểm trên mặt phẳng thỏa mãn tính chất T bổ sung
thêm một điểm nữa sao cho tập thu đợc vẫn thỏa mãn tính chất T (do đó thuật toán cho phép với n
cho trớc xây dựng một tập gồm n điểm thoả mãn tính chất T).
122. Bảng số tựa Pascal
Một bảng số vô hạn đợc xây dựng nh sau:
1) Hàng thứ 1 ghi hai số 1 1
2) Hàng thứ i+1 thu đợc từ hàng thứ i bằng cách giữa hai số bất kỳ thêm vào số là tổng của hai số
đó.
Ví dụ một phần của bảng này:
1 1
1 2 1
1 3 3 1

Lập chơng trình và thuật toán để:
a) In ra dòng thứ n của bảng này (chú ý khi n khá lớn!)
b) Tính xem ở hàng thứ i có bao nhiêu số.
123. Về các phép biến đổi "Nhân 2 trừ 1"
Cho ma trận A kích thớc m x n, Aij - các số tự nhiên. Các phép biến đổi có thể là:

- Nhân tất cả các số của một hàng với 2.
- Trừ tất cả các số của một cột cho 1.
Tìm thuật toán sao cho sau một số phép biến đổi trên ma trận A trở thành toàn số 0.
124. Tìm số đặc biệt
Trong các số có n chữ số (cơ số 10) sao cho giữa chúng không có chữ số 0, tìm số mà hiệu của nó
với tích các chữ số của nó là:
a) Lớn nhất. b) Nhỏ nhất.
125. Tích của 3 trong n số
Tại các đỉnh của n đa giác đều đặt các số 1, -1. Bạn có quyền hỏi, mỗi câu hỏi sẽ biết đợc:
Tích của bất kỳ 3 số trong số n số trên.
Lập thuật toán để tính xem sau ít nhất bao nhiêu lần hỏi bạn có thể biết đợc tích của tất cả n số trên.
126. Tích của 3 số kề nhau trong n số
Tại các đỉnh của n đa giác đều đặt các số 1, -1. Bạn có quyền hỏi, mỗi câu hỏi sẽ biết đợc:
Tích của bất kỳ 3 số đứng cạnh nhau.
Lập thuật toán để tính xem sau ít nhất bao nhiêu lần hỏi bạn có thể biết đợc tích của tất cả n số trên.
127. Đoán vị trí số trên lới
Trên bàn cờ ô vuông 8 x 8 xếp các số từ 1 đến 64. Sau mỗi câu hỏi bạn có thể biết đợc tập hợp các
số của một số các ô bất kỳ. Lập thuật toán để sau một số lần hỏi ít nhất biết đợc vị trí của tất cả các
số.
128. Bài toán 16 con hậu
Trên bàn cờ n x n hãy xếp 2n con hậu sao cho trên mỗi hàng và mỗi cột có đúng 2 con hậu.
129. Xoá số trên vòng tròn
Các số từ 1 đến 1995 đợc xếp theo thứ tự tăng dần trên một đờng tròn theo chiều kim đồng hồ. Bắt
đầu từ số 1, chuyển động theo chiều kim đồng hồ, cứ bớc qua một số lại xoá đi một số. Công việc đó
tiếp diễn cho đến khi trên vòng tròn còn lại đúng một số. Lập chơng trình tính và in ra số đó.
130. Về các số tự nhiên tốt
Số tự nhiên n gọi là "Tốt" nếu tồn tại các số tự nhiên (không nhất thiết khác nhau) A1 Ak sao cho
A1 + A2 + + Ak = n
1/A1 + 1/A2 + + 1/Ak = 1
Lập chơng trình kiểm tra xem các số 19, 21, 23 có phải là "Tốt" không ?

Chú ý: Có các mệnh đề sau:
- Nếu n là "Tốt" thì 2n + 2 và 2n + 9 sẽ là "Tốt".
- Nếu m, n là "Tốt" thì m x n là "Tốt".
- k2 là "Tốt" với mọi k.
- Nếu n là "Tốt" thì 2n+8, 2n+20, 3n+6, 3n+8, 4n+6, 4n+13, 6n+5 đều là "Tốt".
131. Bài toán chia quốc hội
Quốc hội của một nớc nọ có N nghị sĩ. Biết rằng mỗi nghị sĩ có không quá 3
kẻ thù t tởng trong quốc hội. Hãy giúp nớc đó chia Quốc hội thành 2 viện
sao cho trong mỗi viện, mỗi nghị sĩ có không quá một kẻ thù t tởng.
132. Bài toán xếp 20 quân cờ
Cần xếp 20 quân bài khác nhau lên bàn cờ ô vuông 100 x100. Biết rằng mỗi quân cờ từ 1 ô bất kỳ
của bàn cờ có thể khống chế nhỏ hơn 20 vị trí. Tìm cách xếp 20 quân cờ trên sao cho không có quân
cờ nào khống chế đợc các quân cờ khác.
133. Học sinh xếp hàng
Có N học sinh đứng thành 1 hàng ngang, mặt quay về một hớng. Sau một lệnh hô, các em phải quay
sang phải. Nhng do nhầm lẫn một số em đã quay sang trái. Vì vậy từ đó thầy giáo phải chỉnh bớc
nh sau: Nếu có 2 em nào đó đứng quay mặt vào nhau thì bắt 2 em đó quay 1800. Cứ nh vậy cho đến
khi không có ai quay mặt vào nhau nữa. Lập chơng trình mô tả quá trình chỉnh trên. Tìm ví dụ để
quá trình chỉnh trên là nhiều bớc nhất.
134. Về một đồ thị có hớng
Cho n điểm trên mặt phẳng (n>4). Giữa 2 điểm có thể nối đợc 1 đoạn thẳng có hớng. Hãy tìm cách
kẻ một số đoạn thẳng có hớng nh vậy để thoả mãn điều kiện sau:
Với mọi i, j từ điểm i có thể đi đợc đến j qua không quá 2 đoạn thẳng. Lập chơng trình mô tả tất cả
các cách xếp trên.
135. Về một cách nối các điểm trên mặt phẳng
Cho n điểm trên mặt phẳng. Cần nối một số đoạn thẳng giữa các điểm sao cho:
a) điểm nào cũng có đoạn thẳng nối đến.
b) Không tồn tại bộ 3 điểm nào mà số các đoạn đi từ 3 điểm này là nh nhau.
Lập thuật toán mô tả các cách nối trên.
136. Đờng đi của vua

Từ 1 ô bất kỳ trên bàn cờ vua 8 x 8, quân cờ vua sẽ đi một lợt (theo luật đi của
vua) khắp các ô của bàn cờ, mỗi ô một lần và cuối cùng trở về vị trí cũ. Từ tâm
các ô mà quân cờ vua đã đi qua nối chúng lại theo các đoạn thẳng liên tiếp.
a) Lập một đờng đi nh vậy của quân cờ vua.
b) Tính quãng đờng ngắn nhất và dài nhất mà quân cờ vua có thể đi đợc.
137. 9 con tốt
Trên bàn cờ ô vuông 8 x 8 có 9 con tốt xếp thành một hình vuông 3x 3 ở góc trái dới bàn cờ. Các
con tốt có thể nhảy qua 1 con tốt khác tới vị trí đối xứng với con tốt đó. Tồn tại hay không thuật toán
để chuyển cả 9 con tốt đó:
a) đến hình vuông 3x 3 ở góc trái phía trên?
b) đến hình vuông 3 x 3 ở góc phải phía trên?
138. Biểu diễn một số nguyên từ cấp số cộng
Viết chơng trình làm các việc sau:
a) Nhập bốn số nguyên dơng a, b, m, n dới dạng thập phân.
b) In ra số q nhận đợc bằng cách viết liên tiếp lần lợt m số tăng dần của cấp số cộng a + kb.
c) In ra chữ số thứ n của q.
139. Xây dựng ma trận La tinh
Ma trận n x n gọi là Latinh nếu các phần tử của nó đợc đánh số từ 1 đến n sao cho mỗi hàng và mỗi
cột của nó đều là các hoán vị của các số 1, 2, n. Lập thuật toán xây dựng các ma trận Latinh.
140. Ma trận La tinh trực giao
Hai ma trận Latinh A, B cùng kích thớc (xem bài 139) gọi là trực giao với nhau nếu nh chúng không
có 2 bộ (Aij, Bij) nào giống nhau. Hãy xây dựng tất cả các cặp ma trận Latinh là trực giao với nhau.
141. Dãy các hình chữ nhật phẳng
Trên mặt phẳng toạ độ cho n hình chữ nhật A
i
B
i
C
i
D

i
, A
i
B
i
// Ox, A
i
D
i
// Oy, A
i
(x
i
, y
i
), C
i
(u
i
, v
i
), 1<=
i<= n.
Hãy viết chơng trình làm các việc sau:
a) Nhập n hình chữ nhật.
b) Tính số cặp hình chữ nhật có điểm chung.
c) Tìm số k lớn nhất sao cho có k hình chữ nhật có điểm chung.
142. Số hạnh phúc tổng quát
Số tự nhiên n đợc gọi là số hạnh phúc nếu các chữ số trong cách ghi cơ số 10 của nó có thể chia làm
hai nhóm sao cho tổng các chữ số trong mỗi nhóm là bằng nhau. Tính số các số hạnh phúc có n chữ

số.
143. Biến đổi số trên vòng tròn
Trên vòng tròn cho n điểm, mỗi điểm đánh 1 số từ 0, 1, 2. Sau đó ta thực hiện lần lợt các phép biến
đổi sau:
Nếu trên vòng tròn còn các số 2 thì thay thế các số 2 này bằng 0 và các số cạnh đó theo chiều kim
đồng hồ tăng thêm một đơn vị.
Giả sử ban đầu có k số 2. Lập chơng trình tính xem sau bao nhiêu phép biến đổi trên, quá trình sẽ
phải dừng lại. Khi đó tính xem trên hình tròn còn lại bao nhiêu số 1 và số 0.
144. Xếp 3n + 1 điểm trên lới 2n x 2n
Hãy xếp 3n+1 số 1 lên ma trận 2n x 2n sao cho nếu nh xóa đi bất kỳ n cột và n hàng thì vẫn còn lại
ít ra là một số 1.
145. Xếp 3n điểm trên lới 2n x 2n
Trên bàn cờ 2n x 2n có 3n quân cờ. Tìm thuật toán xóa đi n hàng và n cột sao cho trên bàn cờ không
còn quân cờ nào.
146. Một cách sắp xếp dãy 2n-1 số
Tìm thuật toán xếp các số từ 1 đến 2n-1 theo thứ tự sao cho trong dãy số đó không có tổng của một
số số hạng liên tiếp nào mà chia hết cho 2n.
147. Bài toán con sên bò
Trên bàn cờ 9 x 9 tại mỗi ô có một con sên. Sau 1 tiếng còi, tất cả các con sên đều chuyển động sang
một ô bên cạnh theo hớng chéo. Nh vậy sau một tiếng còi, có 1 số ô sẽ có một vài con sên, có 1 số ô
sẽ không có con sên nào. Hãy tính giá trị nhỏ nhất và lớn nhất của số các ô không có con sên nào.
148. Bài toán con sên bò tổng quát
Trên bàn cờ n x n tại mỗi ô có một con sên. Sau 1 tiếng còi, tất cả các con sên đều chuyển động sang
một ô bên cạnh theo hớng chéo. Nh vậy sau một tiếng còi, có một số ô sẽ có một vài con sên, có một
số ô sẽ không có con sên nào. Hãy tính giá trị nhỏ nhất và lớn nhất của số các ô không có con sên
nào.
149. Xếp lại giá sách
Trên giá sách có n quyển sách đợc đánh số từ 1 đến n (các tập của một tuyển tập) và đợc xếp thành
một hàng ngang nhng không theo thứ tự các tập. Cho phép thay đổi nh sau: Mỗi lần đổi một quyển
sách có số hiệu k với tập ở vị trí k của giá sách. Lập thuật toán cho biết sau bao nhiêu lần đổi nh vậy

thì các quyển sách đợc xếp lại đúng thứ tự.
150. Sắp xếp trên vòng tròn
Trên vòng tròn xếp n số 1, 2, 3, , n. Cho phép thực hiện đổi chỗ hai số cạnh nhau nếu chúng hơn
kém nhau lớn hơn 1. Lập thuật toán sử dụng các phép biến đổi đó để xếp lại các số trên theo đúng
thứ tự của mình.
151. Ma trận hoán vị
Xây dựng ma trận n x n sao cho mỗi hàng, mỗi cột và mỗi đờng chéo đều là các hoán vị của 1, 2, ,
n.
152. Về một hoán vị đặc biệt
In ra tất cả các hoán vị của 1,2, ,n thoả mãn tính chất sau: Với mọi i, nếu số i không nằm ở vị trí
đầu tiên thì i-1 hoặc i+1 phải nằm ở bên trái của i.
153. Bài toán biểu diễn tiền
Cho m loại tiền với các giá trị tự nhiên a1, a2, am và một giá trị tiền N (tự nhiên). Viết thuật toán
và chơng trình để tính tất cả các cách biểu diễn N bởi m loại tiền kể trên.
154. Trò chơi hai đống sỏi
Cho 2 đống sỏi có a và b viên, có 2 ngời chơi bốc sỏi. Mỗi ngời đến lợt có thể bốc một trong hai
cách:
- Bốc ở một đống một số sỏi bất kì.
- Bốc ở hai đống một số sỏi nh nhau.
Ngời bốc cuối cùng là ngời thắng cuộc. Tìm thuật toán tối u và viết chơng trình cho các ngời chơi.
155. Ghi số trên bảng
Trên bảng ghi số 0. Mỗi lần đợc tăng số đã viết lên bảng lên 1 đơn vị hoặc tăng gấp đôi. Hỏi sau ít
nhất là bao nhiêu bớc sẽ thu đợc số N.
156. Sắp xếp truyện
Một quyển sách truyện có n truyện ngắn. Mỗi truyện ngắn chiếm lần lợt a1, a2, ,an trang giấy. Các
truyện đợc in từ trang 1, mỗi truyện mới đợc in từ đầu trang tiếp theo. Hãy sắp xếp các truyện sao
cho số lợng các truyện bắt đầu từ trang lẻ là:
a) Lớn nhất.
b) Nhỏ nhất.
157. Lặp lịch trực làm việc

Một công trờng nọ có hai phân xởng A, B với số ngời là a, b. Mỗi ngày cần 2 ngời trực nhật lấy ở hai
phân xởng trên, mỗi phân xởng 1 ngời. Qui tắc lấy ngời ở mỗi phân xởng là lần lợt quay vòng từ ng-
ời đầu tiên đến ngời cuối cùng và lại quay lại ngời đầu tiên. Lập chơng trình phân công trực nhật sao
cho trong một khoảng thời gian nào đó mỗi ngời ở phân xởng A sẽ lần lợt trực nhật với mỗi ngời ở
phân xởng B và quá trình này sẽ đợc lặp lại một cách tuần hoàn (tìm điều kiện của a, b khi nào thì
lập đợc bảng phân công nh vậy).
158. Tìm đờng đi du lịch tối u
Tại một đất nớc có n thành phố. Giữa các thành phố có các tuyến đờng (1 chiều). Biết rằng:
1) Giữa 2 thành phố bất kỳ có thể đi đến nhau (có thể qua nhiều tuyến đờng).
2) Từ 1 thành phố số các đờng đi ra bằng số các đờng đi vào.
Lập thuật toán tìm một con đờng xuất phát từ một thành phố nào đó, đi qua tất cả các tuyến đờng,
mỗi tuyến đờng 1 lần, cuối cùng trở về thành phố ban đầu.
159. Tìm 3 số tự nhiên
Tìm 3 số tự nhiên n1, n2, n3 thỏa mãn điều kiện sau:
a) Tỉ số giữa các số trên là 1:3:5.
b) Các chữ số của 3 số trên viết trong cơ số 10 gộp lại lập thành hoán vị của các số 0,1,2, ,9.
160. Biểu diễn số tự nhiên thành tổng các số tự nhiên khác
Với số tự nhiên n cho trớc tính xem có bao nhiêu cách biểu diễn n thành tổng của 1 hay nhiều số tự
nhiên khác (không tính đến thứ tự của các số hạng, ví dụ 3=2+1=1+2 coi nh là một cách biểu diễn).
161. Đếm số 1
Các số tự nhiên từ 1 đến 1111111111 đợc viết ra liên tiếp thành một hàng ngang. Tính xem trong
hàng đó có bao nhiêu số 1?
162. Bài toán xếp xe
Trên bàn cờ vua 8 x 8 có thể xếp nhiều nhất bao nhiêu con xe sao cho không có con xe nào khống
chế con nào.
163. Bài toán xếp xe kiểu khác
Trên bàn cờ vua 8 x 8 có thể xếp ít nhất bao nhiêu con xe sao cho chúng khống chế đợc toàn bộ bàn
cờ.
164. Bài toán xếp tợng
Trên bàn cờ vua 8 x 8 có thể xếp nhiều nhất bao nhiêu con tợng sao cho không có con tợng nào

khống chế con nào.
Trên bàn cờ vua 8 x 8 có thể xếp ít nhất bao nhiêu con tợng sao cho chúng khống chế đợc toàn bộ
bàn cờ.
165. Bài toán xếp mã
Trên bàn cờ vua 8 x 8 có thể xếp nhiều nhất bao nhiêu con mã sao cho không có con mã nào khống
chế con nào.
166 Biến đổi ma trận về không
Ma trận A kích thớc n x n bao gồm các số nguyên thoả mãn điều kiện: Tổng các số trên mỗi hàng và
mỗi cột đều bằng 0. Cho phép thực hiện các phép toán sau (Q
i,j,k
):
cột j = cột j + hàng i
hàng i = hàng i + cột k
Lập thuật toán sao cho sau một số phép biến đổi trên đa ma trận A trở về ma trận với toàn số 0.
167. Trả tiền cho khách
(Đề thi Tin học chọn đội tuyển quốc gia 1995)
Một quầy trả tiền có N loại tiền với các mệnh giá (giá trị tiền ghi trên tờ tiền) là A[1], A[2], , A[N]
(các A[i] là nguyên dơng và khác nhau từng đôi). Giả thiết loại tiền mệnh giá A[i] có B[i] tờ
(1<=i<=N). Có M khách (đợc đánh số hiệu từ 1 đến M) cần lấy tiền. Số tiền khách j cần lấy là K[j],
K[j] nguyên dơng, 1<=j<=M. Quy định rằng với mỗi khách hoặc quầy từ chối cha trả tiền hoặc quầy
phải trả đúng số tiền mà khách cần lấy.
Dữ liệu vào đợc cho trong file văn bản có tên INP.TXT trong đó dòng đầu ghi giá trị N (N<=10),
dòng tiếp theo ghi các giá trị A[1], A[2], , A[N], dòng tiếp theo ghi các giá trị B[1], B[2], , B[N],
sau đó là dòng ghi giá trị M (M <=20), cuối cùng là dòng ghi các giá trị K[1], K[2], , K[M], tất cả
các giá trị đều nguyên dơng.
1) Đọc file dữ liệu và đa ra màn hình nội dung file dữ liệu (theo thứ tự trên).
2) Tìm cách trả tiền sao cho trả đợc nhiều khách nhất. Thông báo kết quả ra file văn bản với tên
OUT2.TXT trong đó dòng đầu ghi số khách đợc trả tiền, trong các dòng tiếp theo, mỗi dòng ghi
thông tin về một khách đợc trả tiền gồm số hiệu của khách, số tiền phải trả và dãy các số X[1], X[2],
, X[N], trong đó X[i] là số tờ của loại tiền mệnh giá A[i], 1<=i<=N, đợc trả cho khách.

3) Tìm cách trả tiền sao cho trả đợc nhiều tiền nhất. Thông báo kết quả ra file văn bản với tên
OUT3.TXT trong đó dòng đầu ghi tổng số tiền đã trả đợc, trong các dòng tiếp theo, mỗi dòng ghi
thông tin về một khách đợc trả tiền theo quy cách giống nh câu (2).
Chú ý: Hai giá trị liền nhau trên một dòng của các file văn bản cách nhau ít nhất một dấu trắng.
168. Trò chơi 3 đống sỏi
Có ba đống sỏi với số sỏi là a,b,c. Hai ngời chơi bốc sỏi nh sau: Mỗi ngời đến lợt mình đợc bốc 1 số
sỏi bất kỳ từ một đống. Ngời thắng cuộc là ngời bốc sỏi sau cùng. Lập thuật toán tối u cho các ngời
chơi.
169. Lới ô vuông vô hạn
Trên bàn cờ vuông vô hạn về 2 phía lần lợt đặt các số theo qui tắc sau:
Số đầu tiên ở vị trí (1,1) là 0. Sau đó mỗi ô đợc điền số nhỏ nhất lớn hơn hoặc bằng 0 mà cha đợc
điền ở hàng hoặc cột chứa ô đó.
Ví dụ một số số đầu tiên nh sau:
4
3 2
2 3 0
1 0 3 2
0 1 2 3 4
Lập chơng trình tính xem ô ở vị trí (M,N) chứa số nào.
170. Xây dựng ma trận đặc biệt
Xác định ma trận A bậc n x n với các số hạng của chúng bằng -1,0,1 sao cho tổng số tất cả các hàng
và cột (chúng gồm 2n số) đều là các số khác nhau từng đôi một.
171. Biến đổi các cặp số
đối với cặp số (a,b) cho phép thực hiện biến đổi sau: Cộng một số vào số kia và biến đổi cặp số đã
cho thành (a+b,b) hoặc (a,a+b). Viết chơng trình tính số các phép biến đổi ít nhất có thể đợc để biến
đổi từ cặp (1,1) thành cặp số chứa số N cho trớc.
172. Bài toán sơn tốt đen
Trên bàn cờ 10 x 10 xếp bất kỳ 90 con tốt trắng. Mỗi phép biến đổi làm đợc việc sau: Nhặt 1 con tốt
trắng, sơn đen nó và đặt vào 1 ô trống bất kỳ. Công việc đó đợc tiến hành cho đến khi trên bàn cờ
không còn quân tốt trắng nào.

Lập thuật toán mô tả công việc trên và tìm cách sao cho trong suốt quá trình trên không có 2 con tốt
khác màu nào phải đứng cạnh nhau (đứng cạnh nhau theo cạnh của ô bàn cờ).
173. Về 1 thuật toán của dãy tuần hoàn
Dãy số {Xn} gọi là tuần hoàn nếu tồn tại các số tự nhiên M, T sao cho:
Xn = Xn + T, với mọi n>M.
Số M, T nhỏ nhất với tính chất trên gọi là Bậc và Chu kỳ của dãy Xn.
a) Cho dãy tuần hoàn {Xn}. Lập thuật toán tính M và T mà chỉ sử dụng tổng số các so sánh là tuyến
tính đối với Max(M,T).
b) Lập chơng trình cụ thể tính M, T đối với dãy tuần hoàn Xn biết X1 và biết rằng Xn+1=F(Xn), ở
đây:
F(x) = g(x) mod 108, g(x) - hàm số đợc xác định theo công thức:
174. Bài toán xếp bánh ga tô
Có n loại bánh ga tô, mỗi loại m chiếc. Tất cả n x m chiếc bánh trên xếp đều trong n thùng, mỗi
thùng m chiếc. Lập thuật toán để chọn ra từ n thùng trên, mỗi thùng một chiếc sao cho thu đợc n
chiếc thuộc n loại bánh khác nhau.
175. Tìm một số đặc biệt có 6 chữ số
Lập thuật toán tìm một số nguyên có 6 chữ số sao cho thơng của nó với tổng
các chữ số của nó là nhỏ nhất.
176. Dãy nhị phân không lặp
Cho trớc số tự nhiên n. Lập thuật toán cho biết có xây dựng đợc dãy gồm n số 0, 1 sao cho trong dãy
này không có một chữ số hoặc một nhóm chữ số nào đợc lặp lại ba lần liên tiếp hay không (ví dụ:ồ
dãy 1010 010 0100 - nhóm 010 đợc lặp lại ba lần liên tiếp). Trong trờng hợp xây dựng đợc, lập ch-
ơng trình để xây dựng dãy số đó.
177. Dãy tam phân không lặp
Cho trớc số tự nhiên n. Lập thuật toán cho biết có xây dựng đợc dãy số gồm các chữ số 1, 2, 3 sao
cho trong dãy này không có 1 chữ số hoặc 1 nhóm chữ số nào đợc lặp lại hai lần liên tiếp hay không.
Nếu đợc thì lập chơng trình xây dựng dãy số đó.
178. Xâu nhị phân đầy đủ
Với n cho trớc, lập thuật toán và chơng trình xây dựng dãy số nhị phân T (chỉ gồm các chữ số 0, 1)
thoả mãn tính chất:

a) T là không lặp bậc n (dãy nhị phân không lặp bậc k tức là trong dãy đó không có hai đoạn con độ
dài k cạnh nhau mà giống hệt nhau).
b) Mọi dãy số nhị phân gồm n chữ số đều đợc gặp trong T.
179. Một số đặc biệt 4 chữ số
Tìm số tự nhiên có 4 chữ số nhỏ nhất thoả mãn tính chất: Nếu xóa đi 1 chữ số nào đó thì số sẽ giảm
đi 9 lần.
180. Số đặc biệt có n chữ số
Tìm tất cả các số có n chữ số thoả mãn tính chất: Nếu xóa đi 1 chữ số nào đó thì số sẽ giảm đi 9 lần.
181. Tìm một số có 6 chữ số
Tìm tất cả các số có sáu chữ số sao cho tất cả các tích của nó với 2, 3, 4, 5, 6 đều viết đợc từ số ban
đầu bằng cách hoán vị các chữ số.
182. Xây dựng các tuyến đờng tối u
Tại một nớc nọ có n thành phố. Cần xây dựng một số tuyến đờng giữa một số thành phố sao cho
thoả mãn:
a) Nếu giữa 2 thành phố A, B có tuyến đờng thì không tồn tại thành phố C sao cho từ C có các tuyến
đờng đến A và B (để tiết kiệm vật liệu).
b) Nếu giữa A, B không có tuyến đờng nào thì tồn tại đúng 2 thành phố khác C, D sao cho từ C và D
có các tuyến đờng đến cả A và B.
Lập thuật toán xây dựng tuyến đờng cho n thành phố trên (hoặc cho biết rằng không thể xây dựng đ-
ợc).
183. Cấp số cộng bao gồm toàn các số nguyên tố
Tìm một cấp số cộng gồm toàn các số nguyên tố nhỏ hơn 3000.
184. Dãy các số tự nhiên viết liên tiếp
Tất cả các số tự nhiên bắt đầu từ 1 đợc viết liên tiếp theo thứ tự (từ trái sang phải). Lập thuật toán để
tính xem ở vị trí thứ N là chữ số nào.
185. Về một ma trận vuông đặc biệt
Lập thuật toán xây dựng tất cả các ma trận vuông bậc n với các phần tử nguyên thoả mãn điều kiện:
Với mọi i, j, k ta có A
ij
+ A

jk
+ A
ki
= 0.
186. Ba đống sỏi
Có 3 đống sỏi (với số sỏi a, b, c). Mỗi phép biến đổi cho phép lấy đi từ mỗi đống 1 hòn sỏi hoặc
tăng gấp đôi số sỏi ở 1 đống nào đó. Lập thuật toán để sau khi thực hiện một số phép biến đổi có thể
lấy hết số sỏi ở cả 3 đống.
187. Các tổng con bằng nhau lớn nhất
Cho tập các số tự nhiên:
a
1
, a
2
, , a
N

Ta gọi tổng con là tổng dạng
S = a
i1
+ a
i2
+ + a
ik

với i1 < i2 < < ik
Hãy tìm một tập lớn nhất các tổng con bằng nhau của dãy trên.
188. Biến đổi về ma trận dơng
Cho ma trận A kích thớc m x n. Cho phép đổi dấu các số trong cùng một hàng hoặc một cột của A.
Lập thuật toán để sau một số phép biển đổi thu đợc ma trận A thoả mãn tính chất:

Tổng các số hạng của mỗi hàng và mỗi cột đều lớn hơn 0.
189. Sắp xếp dãy số
Cho n số 1, 2, , n sắp xếp trên một đờng thẳng nhng không theo thứ tự. Mỗi lần cho phép đổi chỗ 2
số. Lập thuật toán thực hiện một số phép biến đổi ít nhất để xếp lại trật tự các số trên.
190. Sắp xếp bảng số
Các số từ 1 đến n x n đợc xếp một cách ngẫu nhiên trên toàn bàn cờ ô vuông n x n. Bằng các phép
đổi chỗ 2 số, lập thuật toán thực hiện sau một số ít nhất các phép đổi chỗ đa bảng trên về theo thứ tự
tăng dần.
1 2 n
n+
1
n+
2
2n

n
2
-
n+
1
n
2
-
n+
2
n
2
191. Điền số vào phép trừ
Hai ngời chơi trò chơi sau: Trên bảng ghi biểu đồ
* * * * * *

-
* * * * * *
Ngời thứ nhất lần lợt đọc các chữ số (tùy ý), ngời thứ hai điền vào chúng vào vị trí *. Trò chơi kết
thúc khi đã điền xong tất cả các số.
a) Lập thuật toán cho ngời chơi thứ hai sao cho hiệu số trên thu đợc luôn nhỏ hơn 40.000.
b) Lập thuật toán cho ngời chơi thứ nhất sao cho hiệu số trên luôn lớn hơn 40.000.
192. Điền số vào phép nhân
Hai ngời lần lợt điền dấu + hoặc - vào các dấu * của dãy số:
* 1 * 2 * * 20
a) Lập thuật toán cho ngời thứ nhất để luôn đạt đợc tổng có giá trị tuyệt đối nhỏ hơn 30.
b) Lập thuật toán cho ngời chơi thứ hai sao cho tổng đạt đợc có giá trị tuyệt đối lớn hơn 30.
193. Về một thuật toán xây dựng ma trận nguyên
Cho các số tự nhiên A
1
, A
2
, , A
m
, B
1
, , B
n
thoả mãn:
A
1
+ A
2
+ + A
m
= B

1
+ B
2
+ + B
n

Lập thuật toán xây dựng ma trận nguyên m x n sao cho tổng các số ở hàng i bằng A
i
, tổng các số ở
cột j bằng B
j
.
194. Trò chơi: Một con tốt
Trên bàn cờ n x n có một con tốt nằm ở góc trái dới. Hai ngời chơi trò chơi sau:
Mỗi ngời đợc đi con tốt một nớc sang ô bên cạnh. Không đợc đi con tốt vào ô đã đi qua. Ngời thua
cuộc là ngời không đi đợc nớc của mình.
Lập thuật toán tối u cho các ngời chơi (Nếu n chẵn, ngời đi đầu thắng, n lẻ ngời đi sau thắng).
195. Kết quả giải bóng đá (đề thi Tin học chọn đội tuyển quốc gia 1995)
ở một nớc nọ do các đội bóng đá thiếu tinh thần thi đấu nên số trận đấu hòa rất nhiều. Ban tổ chức
quyết định thay đổi luật để kích thích các đội thi đấu tích cực hơn. Giải sẽ tổ chức thi đấu vòng tròn
nghĩa là mỗi đội đều phải đấu với tất cả các đội khác đúng một trận. Nếu hòa, cả hai đội đều bị 0
điểm. Đội thắng sẽ đợc 3 điểm còn đội thua cũng sẽ đợc 1 điểm. Do sơ xuất của ban tổ chức, bảng
kết quả thi đấu của tất cả các đội bị nhòe một số chỗ không đọc đợc. Ban tổ chức quyết định gửi
bảng đó đến một trung tâm Tin học nhờ xem xét việc khôi phục lại các thông tin bị mất.
Giả sử số đội bóng bằng N (N<=20), bảng kết quả đợc cho bởi một mảng số nguyên A[1 N,
1 N+1], trong đó A[i, j] bằng số điểm đội i đạt đợc trong trận đấu với đội j (1<=i,j<=N, i khác j) và
A[i, N+1] bằng tổng số điểm của đội i trong toàn giải. Để đầy đủ, ta quy ớc A[i, j]=0 (1<=i<=N).
Dữ liệu vào đợc cho trong một file văn bản với tên là INP.TXT, trong đó dòng đầu tiên ghi giá trị N,
dòng i+1 (1<=i<=N) ghi các giá trị A[i,1], A[i,2], , A[i,N], A[i,N+1]. Các giá trị này cách nhau ít
nhất một dấu trắng và quy ớc rằng giá trị nào bị nhòe thì tại đó đợc thay bằng dấu ?.

Lời giải cần đa ra một file văn bản với tên là OUT.TXT, trong đó liệt kê tất cả các khả năng có thể
có. Với mỗi bảng kết quả đợc khôi phục, cần ghi số thứ tự của bảng trên một dòng, các dòng tiếp
theo, ghi các dòng của bảng giống nh trong file dữ liệu vào, trong đó các dấu ? đợc thay bằng các
giá trị tơng ứng đã khôi phục.
Ví dụ với file dữ liệu vào INP.TXT
4
0 1 3 ? 7
? 0 ? ? 6
1 ? 0 1 ?
? ? ? 0 ?
File in kết quả OUT.TXT sẽ là:
1
0 1 3 3 7
3 0 3 0 6
1 1 0 1 3
1 0 3 0 4
2
0 1 3 3 7
3 0 0 3 6
1 0 0 1 2
1 1 3 0 5
196. Bài toán "Tem th"
Một đất nớc nọ có n loại tem th khác nhau. Luật dán tem là ở trên mỗi phong bì chỉ đợc dán nhỏ hơn
hoặc bằng m con tem (có thể là giống nhau).
a) Cho trớc n loại tem ứng với số tiền là a1, a2, , an. Hãy xác định dãy số 1, 2, 3 Tn,m lớn nhất
(với m, n cho trớc) sao cho mọi số trong dãy trên đều đợc thể hiện bằng giá tiền 1 lá th với qui tắc
dán tem nh trên.
b) Cho trớc m,n. Hãy xác định bộ tem a1, a2, , an sao cho số Tm,n đợc xác định trong câu (a) là
lớn nhất.
Ví dụ: Với n=4, m=5, dãy cần tìm là 1, 2, 71 ứng với bộ tem (1, 4, 12, 21) hoặc (1, 5, 12, 28).

197. Bài toán "Phủ hình chữ nhật"
Hai hình chữ nhật gọi là không so sánh đợc nếu không thể xếp hình nọ nằm bên trong hình kia. Cho
trớc hình chữ nhật mxn. Hãy xác định xem hình này có thể phủ đợc bởi các hình chữ nhật con
không so sánh đợc với nhau không? Trong trờng hợp có thể, tìm tất cả các phủ nói trên.
198. Bài toán "Pentamino"
Hình chữ nhật 6 x 10 đợc tạo thành từ 12 Pentamino (mỗi Pentamino tạo thành từ 5 hình vuông 1 x
1) nh hình vẽ.
Hãy tìm tất cả các cách phân chia khác cho trờng hợp 6 x 10.
Làm bài toán tơng tự cho hình chữ nhật 5 x 12.
199. Bài toán "Y-Pentamino"
Y-Pentamino là hình có dạng:
Tìm số n nhỏ nhất sao cho hình chữ nhật 12 x 5n có thể phủ kín bởi các Y - Pentamino.
200. Hằng đẳng thức
Đẳng thức:
1
2
+ 2
2
+ 3
2
+ + 24
2
= 70 x 70
cho ta cảm tởng rằng hình vuông 70 x 70 có thể phủ bằng 24 hình vuông kích thớc 1 x 1, 2 x 2, ,
24 x 24. Lập chơng trình kiểm tra xem điều trên có đúng không.
201. Sắp xếp công việc
Có n ngời và n công việc. Gọi C
ij
là công sức làm việc j của ngời i. Lập chơng trình để sắp xếp mỗi
ngời một công việc sao cho công sức bỏ ra là ít nhất.

202. Xâu nhị phân N - đầy đủ
Lập thuật toán in ra xâu ký tự X gồm các số 0, 1 sao cho thoả mãn tính chất: Mọi xâu gồm các ký tự
0, 1 có độ dài N đều đợc gặp trong X (xâu ký tự X nh vậy gọi là N-đầy đủ).
Lập xâu ký tự N-đầy đủ có độ dài ngắn nhất.
(Độ dài xâu này sẽ là 2
N
+ N - 1)
203. Xâu nhị phân vòng N - đầy đủ
Trên vòng tròn sắp xếp các ký tự 0, 1 sao cho mọi xâu ký tự 0, 1 độ dài n đều đợc gặp trên vòng tròn
(là một dãy n ký tự liên tiếp, tính theo chiều kim đồng hồ).
204. Bài toán k đống sỏi
Trên mặt đất có k đống sỏi với số sỏi tơng ứng là A
1
, A
2
, A
k
thỏa mãn điều kiện:
A
1
+ A
2
+ + A
k
= 1 + 2 + + n = n(n+1)/2
Cho phép mỗi bớc lấy ra ở mỗi đống sỏi 1 viên và tập trung số đó lại lập thành một đống sỏi mới.
Chứng minh rằng sau một số hữu hạn bớc trên mặt đất có đúng n đống sỏi với số viên sỏi là 1, 2,
3, n. Lập chơng trình tính số bớc đó.
205. Trò chơi Channon
Xét một Graph với 2 đỉnh đợc đánh dấu. Hai ngời chơi trò chơi sau:

a) Ngời thứ nhất có quyền bỏ đi 1 cạnh của Graph trên.
b) Ngời thứ hai có quyền đánh dấu 1 trong các cạnh còn lại của Graph để cho biết rằng cạnh này đã
đợc "bảo vệ" và không bao giờ bị tháo gỡ bởi ngời thứ nhất nữa. Ngời thứ nhất thắng cuộc nếu tách
rời đợc hai đỉnh đã đánh dấu. Ngời thứ hai thắng cuộc nếu nối liền đợc hai đỉnh trên bởi các cạnh đã
đợc bảo vệ. Lập thuật toán tối u cho trò chơi trên.
206. Xếp quân cờ 3 màu
Một lới ô vuông gồm 3 hàng và n cột. Xếp ngẫu nhiên 3n quân cờ, trong đó n quân xanh, n quân đỏ,
n quân vàng vào các ô của lới trên. Cho phép đổi vị trí các quân cờ của một hàng bất kỳ.
Lập thuật toán sắp xếp lại sao cho mỗi cột của bàn cờ đều chứa 3 quân cờ với 3 mầu khác nhau.
207. Xếp cờ trên lới 3 màu - tổng quát
Tổng quát hóa đề số 206 cho trờng hợp lới m hàng và n cột.
208. Thiết lập hệ thống đờng tối u
Có n thành phố. Cần nối giữa các thành phố bằng các con đờng sao cho:
Từ một thành phố bất kỳ có thể đi đến thành phố bất kỳ khác phải qua cùng lắm là 1 thành phố trung
gian nữa, và số các đờng là bé nhất.
209. Gọi điện thoại
Có N ngời, mỗi ngời biết một trong N thông tin khác nhau. Họ bắt đầu gọi điện thoại để thông báo
các thông tin đó cho nhau. Mỗi cú điện thoại giữa hai ngời kéo dài 1 phút. Hỏi sau ít nhất bao nhiêu
phút để tất cả mọi ngời đều biết tất cả các thông tin trên? (mỗi lần gọi điện, hai ngời có thể thông
báo cho nhau tất cả các thông tin mình biết).
210. Xếp số trên vòng tròn
Sắp xếp các số 1, 2, , n lên vòng tròn sao cho hai số bất kỳ cạnh nhau sẽ có hiệu nhỏ hơn hoặc
bằng 2.
211. Tổng các số tự nhiên liên tiếp
Cho trớc số tự nhiên n. Lập thuật toán cho biết n có thể biểu diễn thành tổng của hai hoặc nhiều số
tự nhiên liên tiếp hay không?
Trong trờng hợp có, hãy thể hiện tất cả các cách có thể có.
212. Số đặc biệt có 5 chữ số
Có bao nhiêu số có 5 chữ số chia hết cho 3 và trong cách viết của nó có chứa chữ số 6.
213. Tìm giá trị lớn nhất

Tìm giá trị lớn nhất của tổng
|A
1
-1| + |A
2
-2| + + |A
n
-n| với A
1
, A
2
, A
n
là hoán vị của 1,2, n.
214. Bài toán n-mino
n-mino là hình thu đợc từ n hình vuông 1 x 1 ghép lại (cạnh nối cạnh). Hai n-mino coi nh đồng nhất
nếu chúng có thể chồng khít lên nhau. Lập chơng trình tính và vẽ ra tất cả các n-mino. Gọi Mn là số
các n-mino khác nhau.
Ví dụ:
215. Bài toán 16 quân cờ
Trên bàn cờ 8 x 8 xếp 16 quân cờ sao cho trên mỗi hàng và mỗi cột có đúng 2 quân cờ. Hãy tô màu
16 quân cờ này bằng hai mầu đỏ, xanh sao cho trên mỗi hàng và mỗi cột 2 quân cờ trên có mầu
khác nhau.
216. Xếp đôi nhảy
Có n bạn trai và n bạn gái cùng đến một cuộc khiêu vũ. Biết rằng mỗi bạn trai quen với 2 bạn gái và
mỗi bạn gái quen với 2 bạn trai. Lập cách chia 2n bạn trên thành n đôi nhảy sao cho mỗi đôi nhảy
gồm 2 bạn đã quen nhau.
217. Cực tiểu hóa một giá trị
Hãy xếp các số 1,2, , n lên vòng tròn sao cho tổng của n số hạng |Ai-Aj| là nhỏ nhất, trong đó j=i+1
với i<n và j=1 với i=n.

218. Đờng đi trên lới
Cho lới ô vuông m x n, các ô đợc điền các số Aij. đờng đi là đờng:
+ Xuất phát từ một ô bên trái.
+ Kết thúc tại một ô bên phải.
+ Từ 1 ô chỉ có quyền đi sang 3 ô kề bên phải nó.
Ví dụ:
1) Tính số các đờng đi khác nhau.
2) Tìm đờng đi với tổng các số trên đờng đi là nhỏ nhất.
219. Xếp lịch thực hiện các công việc
Có n công việc, ký hiệu là A1, A2, ,An, cần phải thực hiện bởi một thợ cả. Công việc Ai cần làm
trong Ti đơn vị thời gian. Với mỗi công việc Ai tồn tại hàm Gi(t) - hàm giá trị công việc phụ thuộc
vào thời gian t, Gi(t) - hàm đơn điệu tăng thực sự. Hãy tìm lịch thực hiện lần lợt các công việc Ai
1
,
Ai
2
, , Ai
n
sao cho cực tiểu hóa giá trị:
220. Lịch xếp công việc
Có n công việc và k thợ cả. Biết rằng mỗi ngời thợ đều làm đợc mọi công việc và làm công việc thứ i
mất Ti thời gian. Các công việc này có liên quan với nhau, phụ thuộc vào các số Pij với i<j, trong đó:
Nếu Pij=1 thì công việc i cần thực hiện trớc công việc j.
Nếu Pij= -1 thì công việc i cần thực hiện sau công việc j.
Nếu Pij = 0 thì các công việc i,j độc lập với nhau.
Hãy lập lịch phân công cho k thợ cả thực hiện n công việc trên sao cho thời gian để thực hiện các
công việc trên là nhỏ nhất và các điều kiện Pij phải đợc thỏa mãn.
221. Vectơ vô hạn chiều
Xét tập hợp các vectơ vô hạn chiều có các tọa độ là các số nguyên không âm và chỉ có hữu hạn số
lớn hơn 0.

Ví dụ:
(1,1,2,0, )
(2,0,3,0, )
Xét phép biến đổi sau với các vectơ trên:
Giả sử v = (A
1
,A
2
, ,A
n
,0, ). đặt k = A
1
+A
2
+ +A
n
.
Trớc tiên tịnh tiến vectơ v sang trái 1 đơn vị, ta thu đợc vectơ (A
2
,A
3
, A
n
,0, ). Bây giờ ở vị trí k của
vectơ trên ta cộng thêm 1 đơn vị, tức là nếu đặt E
k
=(0 0,1,0, ) (chỉ tọa độ k có giá trị là 1, các tọa
độ khác bằng 0) thì thu đợc Tv = (A
2
,A

3
, A
n
,0, ) + E
k
.
Ví dụ:
(1,1,2,0 )
(1,2,0,1,0, )
(2,0,1,1,0, )
(0,1,1,1,0, )
. . . . . . . . .
a. Chứng minh rằng dãy v, T
1
v, T
2
v, là tuần hoàn (tức là tồn tại M, L sao cho T
n
v = T
n+L
v với mọi n
> M.
b. Lập chơng trình tính vị trí đầu tiên, mà từ đó dãy trên tuần hoàn và tính chu kì của dãy trên (phụ
thuộc vào v).
c. Khi nào thì dãy trên có chu kỳ là 1? Chứng minh rằng điều này xảy ra khi
A
1
+ 2 * A
2
+ 3 * A

3
+ = S(S+1)/2 , với S nào đó
và v = (A
1
, A
2
, A
3
, )
d. Tổng quát: mô tả tất cả v với chu kỳ k cho trớc.
222. Hệ điểm tù
Trong không gian cho n điểm, biết rằng:
Không có 3 điểm nào thẳng hàng.
điểm bất kỳ lập thành tam giác có một góc lớn hơn 120 độ.
Lập thuật toán đánh số các điểm trên thành A1,A2, , An sao cho với mọi i < j < k ta có góc tạo bởi
ba điểm Ai, Aj, Ak với đỉnh tại Aj lớn hơn 120 độ.
223. Đa giác 50 cạnh
Hãy điền các số 0,1,2, ,9 vào đỉnh của một đa giác 50 cạnh sao cho với mọi cặp số i,j tồn tại cạnh
của đa giác với hai đỉnh là i, j (i,j <=9).
224. Đa giác n cạnh - tổng quát
Đặt Mn = n
2
/2 nếu n chẵn và Mn = n(n-1)/2 nếu n lẻ.
Hãy điền các số 1, 2, , n vào các đỉnh của đa giác Mn cạnh sao cho với mọi cặp i, j tồn tại cạnh của
đa giác với hai đỉnh là i, j.
225. Các dãy trung bình cộng
Cho dãy số tự nhiên A1, A2, An trong đó các số khác nhau từng đôi một. Từ dãy trên ta thành lập
dãy mới: (A1+ A2)/2 , (A2 + A3)/2 , (An-1 + An)/2 , (An + A1)/2
Quá trình này còn tiếp tục nếu dãy mới thu đợc toàn là các số nguyên. Chứng minh rằng quá trình
này sẽ phải kết thúc sau hữu hạn bớc. Tìm bộ số A1, A2, , An sao cho số các bớc là lớn nhất.

226. Phép biến đổi với các dấu +, -
Trên bàn cờ ô vuông n x n đặt 1 dấu "-" và (n
2
-1) dấu "+".
Cho phép đổi dấu của tất cả các ô:
- Cùng nằm trên 1 hàng.
- Cùng nằm trên 1 cột.
- Cùng nằm trên một đờng chéo (\ và /) (chính và phụ).
Lập thuật toán cho biết rằng sau một số các phép biến đổi có thể đa bàn cờ về dạng toàn dấu "+" hay
không ?
227. Tìm số đặc biệt
Với số tự nhiên n đặt Cn= n+ Sn, ở đây Sn bằng tổng các chữ số của số tự nhiên n.
Hãy tìm các số n sao cho Cn=1995.
228. Đa vé vào thùng rác
Xét tập hợp các vé gồm các số có k chữ số, bắt đầu từ 0 0 đến 9 9. Có 100 thùng rác đợc đánh dấu
từ 01, 02, đến 99. Các vé này cần vứt vào thùng rác theo nguyên tắc sau: mỗi vé chỉ đợc vứt vào
thùng rác đợc đánh số bằng số thu đợc từ số vé sau khi xóa đi k-2 chữ số.
Cần ít nhất bao nhiêu thùng để đựng tất cả các vé đó?
Lập thuật toán mô tả cách bỏ vé vào các thùng đó sao cho số thùng là ít nhất.
229. Tô màu khối lập phơng
Một hình hộp lập phơng cần đợc tô bởi 2 mầu. Hai cách tô gọi là nh nhau nếu 2 hình đó có thể đợc
xếp cạnh nhau sau cho chúng giống hệt nhau. Hãy lập thuật toán và viết chơng trình mô tả tất cả các
cách tô màu. Có bao nhiêu cách tô màu nh vậy?
230. Tô màu hình lập phơng tổng quát
Một hình hộp lập phơng cần đợc tô bởi n mầu (n<=6). Hai cách tô gọi là nh nhau nếu 2 hình đó có
thể đợc xếp cạnh nhau sau cho chúng giống hệt nhau. Hãy lập thuật toán và viết chơng trình mô tả
tất cả các cách tô màu. Có bao nhiêu cách tô màu nh vậy?
231. Bài toán "Cắt dây"
Có n đoạn dây chiều dài là D1, D2, , Dn và m mẫu: A1, A2, , Am. Cần cắt từ n đoạn dây trên
thành các mẫu sao cho tổng số các đoạn dây thừa là bé nhất.

232. Bài toán "May đo"
Giả sử có n mẫu vải hình chữ nhật với độ dài các cạnh tơng ứng là (a1, b1), (a2, b2), (an, bn). Cần
cắt ra từ một băng vải chiều rộng là R, chiều dài là vô tận đúng n mẫu trên sao cho số vải thừa ra có
diện tích nhỏ nhất (chỉ tính số vải thừa ở chỗ bị cắt ra) (xem hình vẽ).
233. Bài toán "Ngời gác rừng"
Một khu rừng có n địa điểm A1, A2, , An. Do điều kiện địa hình thời gian đi từ vị trí i đến vị trí j
mất Cij thời gian. Vậy ta có ma trận thời gian (Cij), Cii=0, Cij>0.
(Chú ý: ma trận không đối xứng). Từ một vị trí (Ai chẳng hạn) ngời gác rừng cần đi kiểm tra một lợt
tất cả các vị trí, mỗi vị trí một lần.
Lập thuật toán tính đờng đi sao cho tổng thời gian phải đi là nhỏ nhất.
234. Một thuật toán điền số của ma trận
Hãy lập thuật toán điền các phần tử của ma trận N x N các số 0, 1 và -1 sao cho:
a) Tổng các số của mọi hình vuông con 2 x2 đều bằng 0.
b) Tổng các số của ma trận trên là lớn nhất.
235. Phủ 3- mino cho hình chữ nhật
Cho hình chữ nhật M x N. Biết rằng M x N chia hết cho 6.
a) Chứng minh rằng hình chữ nhật này có thể phủ bởi các 3-mino (xem bài 214).
b) Lập thuật toán xây dựng một phủ nào đó.
236. Trò chơi viết phấn lên bảng
Hai ngời chơi trò chơi sau:
- Mỗi ngời lần lợt viết lên bảng một số tự nhiên.
- Qui tắc đi là không đợc viết số là ớc số của các số đã ghi trên bảng và số đợc viết phải nhỏ
hơn hoặc bằng n (n là số cho trớc).
- Ngời thắng cuộc là ngời đi đợc nớc sau cùng.
Tìm thuật toán tối u cho các ngời chơi.
237. Phân tích N = p3 + q3
Cho trớc số N.
Tính xem có bao nhiêu cách phân tích N thành tổng các lập phơng
N = p
3

+ q
3
không tính đến thứ tự của p, q
(Ví dụ 9 = 1
3
+ 2
3
= 2
3
+ 1
3
chỉ là một cách phân tích.
238. Xác định tập hợp A
Tập hợp A đợc định nghĩa nh sau:
1 thuộc A.
Nếu k thuộc A thì 2k+1 thuộc A và 3k+1 thuộc A.
Hãy lập chơng trình in ra n<1000 số hạng đầu tiên của A.
(Ta có một số số hạng đầu tiên: 1,3,4,7,9,10,13,15,19, )

×