Tải bản đầy đủ (.docx) (11 trang)

De thi tin hoc tre khong chuyen toan quoc tu9952000

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 (141.77 KB, 11 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

Đề thi tin học trẻ không chuyên tq lần thứ I-1995
Khối B - Thời gian: 180 phút


Bài 1.


Văn cho Nam mợn 1 đĩa mềm trong đó có ghi 3 trị chơi. Trên đĩa của Văn có th mục tên là VAN và
3 th mục con của nó có tên tơng ứng là TROCHOI1, TROCHOI2 và TROCHOI3 đều có chung phần
chính tơng ứng là TETRIS, FOOTBALL và MATH.


Giả sử đĩa mềm đợc đặt trong ổ đĩa A.
Em hãy giúp Nam:


1. Sao chép các chò trơi từ đĩa mềm sang đĩa cứng C ở th mục có tên l NAM.


2. Đổi tên các tệp tin trong các th mục TROCHOI1, TROCHOI2 và TROCHOI3 thành các tệp có phần
chính tơng ứng là XEPHINH, BONGDA và TOAN


3. Chuyển trò chơi XEPHINH vào th mục TROCHOI3, trò chơi TOAN vào th mục TROCHOI1
4. Đổi tên th mục TROCHOI1 thành TOAN


Đổi tên th mục TROCHOI2 thành BONGDA
Đổi tên th mục TROCHOI3 thành XEPHINH


Em hãy dùng một phần mềm soạn thảo để ghi lại dãy các lệnh của DOS thực hiện các công việc ở
trên vào một tệp văn bản có tên là BTDOS.TXT.


Bµi 2.


Dùng một phần mềm soạn thảo văn bản để soạn thảo và trình bày thời khố biểu học trên lớp của
em bao gồm các ngày trong tuần (thứ) và tiết học của mỗi ngày. Phía dới của Thời khố biu l Bng cỏc
n v o lng bao gm:



- Đơn vị đo chiều dài: km, m, dm, cm, mm.
- Đơn vị đo trọng lợng: Tấn, tạ, yến, kg, g


- Công thức tính diện tích các hình: tam giác, hình vuông, chữ nhật và hình thang.
Thí dụ: 1 kg = 1000 g, 1 km = 1000 m


Ghi kết quả tình bày vào tệp văn bản có tên TKB.TXT


Bài 3.


Dựng mt phn mềm có sẵn để vẽ một đồng hồ có khả năng chỉ giờ, phút, giây, thứ trong tuần và
ngày trong tháng.


Lu trữ kết quả vào đĩa với tên có phần chính là DONGHO, phần đi có tên ngầm định qui định
bởi phần mềm đợc sử dụng.


Bµi 4.


Trị chơi xếp chữ đợc thực hiện nh sau:


Cho trớc một dãy các chữ cái. Ngời chơi có nhiệm vụ lấy các chữ cái từ dãy đã cho để ghép lại
thành một từ hoặc một cụm từ có nghĩa. Khi một từ hoặc một câu đã đợc đủ, ngời chơi sẽ chuyển sang
một dòng mới và xếp tiếp. Luật tính điểm nh sau: Nếu chỉ xếp đợc 1 từ riêng biệt thì nhận đợc 1 điểm
cho mỗi chữ cái, nếu xếp đợc một cụm từ có nghĩa (có từ 2 từ trở lên) thì nhận đợc 2 điểm cho mỗi chữ
cái.


<i>Ví dụ</i>: Với dãy đã cho là HNCOHIT có thể có các lời giải sau:
<i><b>Li gii 1</b></i>: (12 im)



TINHOC
<i><b>Lời giải 2</b></i>: (7 điểm)


NHO
TICH


Cho trớc dÃy: IANHIVNMYOT


Em hÃy thực hiển trò chơi trên và ghi kết quả ra một văn bản có tên là KQCHOI.TXT


Đề thi tin học trẻ không chuyên tq lần thứ II-1996
Khối B - Thêi gian: 180 phót


Bµi 1.


Em hãy dùng 1 phần mềm soạn thảo bất kỳ để soạn thảo tệp BLDOS.BAT dùng để thực hiện việc
sao chép các tệp dữ liệu từ đĩa mềm vào ổ đĩa cứng. Công việc địi hỏi độ an tồn cao do đó cần thực hiện
các thao tác cụ thể sau:


1. Trớc tiên cần kiểm tra xem trong ổ đĩa C, tại th mục gốc có th mục DATA hay khơng. Nếu cha tồn tại
thì khởi tạo th mục DATA trong th mục gốc. Ngợc lại cần đa ra thơng báo “Trên đĩa đã có th mục
DATA” và đa ra câu hỏi “Có ghi số liệu mới đè lên không [c/k]” Nếu câu trả lời là “k” thì dừng
chơng trình, nếu là “c” thì tiếp tục.


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

câu “Hãy đa đĩa mềm chứa dữ liệu vào ổ đĩa A”


Bµi 2.


Em hãy dùng 1 phần mềm đồ hoạ để vẽ 1 đờng phố quê hơng của em, kết quả đợc ghi vào tệp có
tên QUEHUONG, phần mở rộng của tệp do phần mềm tự tạo ra. Tranh vẽ tối thiểu phải có đờng xá, xe


cộ và ngời đi lại.


Bµi 3.


Em hãy dùng một phần mềm soạn thảo văn bản để soạn thảo và trình bày trên 1 trang văn bản
một số quy tắc cho ngời đi bộ và ngời đi xe đạp cần tôn trng khi i ng.


Ghi kết quả vào tệp văn bản có tên QUYTAC, phần mở rộng của tệp do phần mềm tự tạo ra.


Bài 4.<i><b>Trò chơi</b></i> <i>Đẩy bóng thông minh</i>


Trờn sân kẻ lới ơ vng kích thớc 9x9, tại ơ chính giữa sân có một hồ nhỏ. Trên sân đặt


trớc một số quả bóng, mỗi quả nằm trên một ơ lới. Ví dụ hình vẽ sau mơ tả một trạng


thái ban đầu của sân.



9


8 0


7


6 0


5 <sub></sub>


4


3 0


2


1


1 2 3 4 5 6 7 8 9


Nhiệm vụ của ngời chơi là lần lợt đa các quả bóng trên vào hố nằm ở giữa sân. Các quả bóng có
thể đợc điều khiển để di chuyển bằng 2 cách với năng lợng tiêu thụ khác nhau. Khơng cho phép hai quả
bóng nằm trên 1 ô và không cho phép đa một quả bóng đi qua một ơ có quả bóng khác. Qui định đánh
địa chỉ các ô lới theo số thứ thự cột tính từ trái qua phải và hàng tính từ dới lên, ví dụ 34 chỉ vị trí cột 3,
hàng 4. Trong ví dụ trên vị trí bóng lần lt l 33, 68 v 76.


Các cách điều khiển bóng bãng:


<i>Cách 2</i>: đi theo các đờng song song với một trong hai đờng chéo một số ô bất kỳ. Năng lợng tiêu
thụ để đi qua một ô là 15


Em hãy chơi trò chơi trên với trạng thái ban đầu đợc cho nh hình vẽ dới đây và với tổng năng
l-ợng tiêu thụ nhỏ nhất.


9 0


8 0


7 0 0


6 0 0


5 0 <sub></sub>


4 0 0



3 0


2


1 0 0 0


1 2 3 4 5 6 7 8 9


Kết quả các bớc chơi đợc thể hiện trong tệp văn bản BONG.TXT (tệp này đợc tạo bằng một phần
mềm soạn thảo bất kỳ). Tại mỗi dòng ghi cách đi một lần của một quả bóng bao gồm vị trí hiện tại và vị
trí đích. Tiếp theo là tổng số năng lợng đã tiêu thụ sau bớc đi trên. Ví dụ dạng của một tệp kết quả nh
sau:


33 55 30


76 75 40


75 55 60


68 65 90


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

Bµi 5.


Nếu em là ngời phát triển máy tính (chế tạo hay làm phần mềm) thì em cải tiến để máy có những
khả năng mới nào. Nêu ý kiến của em vào một tệp văn bn cú tờn SANGTAO.TXT


Đề thi tin học trẻ không chuyên tq lần thứ II-1996
Khối C - Thời gian: 180 phút


Bài 1.



<i><b>Câu1.</b></i> Hãy nêu cách tổ chức file CONFIG.SYS để khi nạp MSDOS, ngời ta có thể vào mơi trờng
3 cấu hình tuỳ chọn:


1 - GAMES
2 - WINDOWS
3 - PASCAL


với cấu hình mặc định là PASCAL, thời gian chờ đợi 5 giây. Trong cấu hình GAMES cần tạo ổ ảo 2 Mb.
<i><b>Câu 2</b></i>. Nêu một phơng án viết file AUTOEXEC.BAT sao cho khi nạp MSDOS với file
CONFIG.SYS đợc chuẩn bị theo câu 1, nếu chọn cấu hình 1 thì hệ thống sẽ sao chép toàn bộ th mục
C:\GAMES vào ổ đĩa ảo có địa chỉ D; Nếu chọn cấu hình 2 thì tự động nạp WINDOWS, cịn nếu chọn
cấu hình 3 - nạp TURBO PASCAL (biết rằng file TURBO.EXE đợc lu trữ ở một trong hai th mục
C:\PASCAL\BIN hoặc C:\PASCAL\BGI)


Néi dung các files CONFIG.SYS và AUTOEXEC.BAT ghi vào file văn bản BL1.TXT, tr ớc mỗi phần ứng
với nội dung từng file tơng ứng có dòng File CONFIG.SYS hoặc File AUTOEXEC.BAT


Bài 2.


Lp chơng trình nhập 2 số nguyên dơng m,n vào từ bàn phím (0<m<n 969696) sau đó:
1. Đa ra màn hình tử số và mẫu số của phân số tối giản m/n


2. Tìm cách biểu diễn phân số m/n dới dạng tổng của một số ít nhất các phân số có tử số là 1, đa ra màn
hình số lợng các số hạng và các mẫu số của chúng.


<i>Ví dụ</i>: Với m=20, n=24, kết quả ra màn hình có dạng


Câu 1: 5 6



Câu 2: 2


2 3


Bài 3.


Cho 1 li <i>m x n</i> ơ vng có cạnh độ dài đơn vị (m, n <51). Trên mỗi ô (i, j) của lới ta dựng 1 cột
bê tơng hình hộp có đáy là ơ (i, j) và chiều cao là hi,j. Do ảnh hởng của áp thấp nhiệt đới, trời đỏ ma to và


đủ lâu. Giả thiết rằng nớc không thẩm thấu qua các cột bê tơng cũng nh khơng rị rỉ qua các đờng ghép
giữa chúng. Hãy xác định khối lợng nớc chứa giữa các cột bê tông của lới.


Dữ liệu vào đợc ghi trong file văn bản có tên BL3.INP, trong đó dịng đầu tiên chứa 2 số m, n
cách nhau ít nhất một dấu cách; các dòng tiếp theo chứa các số nguyên d ơng h1,1, h1,2....,h1,n, h2,1, h2,1....,


h2,n, ... hm,1, hm,2,...., hm,n là các chiều cao của các cột bê tông dựng trên lứơi (các số đợc ghi cách nhau


bëi dấu cách hoặc dấu xuống dòng).


a ra mn hỡnh khi lợng nớc tính đợc.


Bµi 4.


Nếu em là ngời phát triển máy tính (chế tạo hay làm phần mềm) thì em cải tiến để máy có những
khả năng mới nào. Nêu ý kiến của em vào một tệp văn bản có tờn BL4.TXT


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

Đề thi tin học trẻ không chuyên tq lần thứ III-1997
Khối B - Thời gian: 180 phót


Bµi 1.<i><b>MS-DOS</b></i>



<i>Câu a.</i> Một phần mềm học ngoại ngữ gồm 1 tệp chơng trình ENGLISH.EXE và các tệp dữ lioêụ
lu trữ trên 2 đĩa mềm DISK1 và DISK2.


H·y t¹o tƯp KHOITAO.BAT thực hiện các việc sau:
- Tạo cấu trúc th mục sau trong C:\WINDOWS:
HOC_NN


DATA
PRG


- Sao tệp chơng trình vào th mục PRG và các tệp dữ liệu vào th mục DATA.


<i>Câu b. </i> Lập tệp COPYF.BAT để sao chép một hoặc nhiều nhóm tệp (khơng q 5) sang một th
mục chung thoả mãn các yêu cầu sau:


- Các nhóm tệp cần sao chép có thể ở 1 hoặc nhiều th mục khác nhau.
- Nếu khơng tìm thấy một tệp nào đó thì thơng báo “File khơng tìm thấy”
Cách thực hiện lnh COPYF nh sau:


C:\>copyf <Đích> <tên1> <tên 2> ....



ở đây


- <Đích> là tên mục chung;


- <Tờn 1>, <Tờn 2>,... là tên tệp và có thể chứa các ký t i din? v *.


Bài 2.<i><b>Lập trình PASCAL</b></i>



Cho số tự nhiên N (N<=50). HÃy viết chơng trình thực hiện:


Cõu a) Nhập số N, sau đó nhập N số nguyên từ bàn phím. thứ tự của các số gọi là chỉ số.
Câu b) Hãy tính trong dãy số trên có bào nhiờu s dng chn.


Câu c) Tìm (các) chỉ số của giá trị âm lớn nhất của dÃy số nếu có.
Câu d) Tìm tất cả các dÃy con dài nhất các số khác không cùng dấu.


* a cỏc kt qu thc hiện ra màn hình dới dạng thích hợp
* Chơng trình phải đợc ghi trong file có tên là BL2.PAS


Bµi 3.<i><b>LËp trình PASCAL</b></i>


Nhập vào từ bàn phím một số N nguyên d¬ng (N<=5000)


<i>Câu a)</i> Hãy phân tích N thành tổng của hai số nguyên tố (nếu đợc) và thông báo không c nu
khụng cú phng ỏn no.


<i>Câu b)</i> Nếu N thoả mÃn câu a, hÃy đa càng nhiều càng tốt các phơng án phân tích (2 phơng án có
cùng các số hạng chỉ coi là một)


* a cỏc kt qu thc hiện ra màn hình dới dạng thích hợp.
* Chơng trình phải đợc ghi trong file có tên là BL3.PAS.


§Ị thi tin học trẻ không chuyên tq lần thứ IV-1998
Khối B - Thêi gian: 180 phót


Bµi 1:<i><b>ExtDel</b></i>


Em hãy viết tệp EXTDEL.BAT dùng đểm tổng quát lệnh DEL và DELTREE của DOS nh sau:



Khi lệnh đợc thực hiện với một hoặc một vài tham số (nhiều nhất là 4 tham số), chơng trình sẽ
kiểm tra và thực hiện các chức năng sau vi mi tham s:


- Nếu giá trị tham số không chứa các ký tự mô phỏng * và ?, kiểm tra xem giá trị của tham
số là File hay Th mục, nếu là File thì thực hiện thì thực hiện việc xoá bằng lệnh DEL, nếu là th mục thì
thực hiện việc xoá bằng DELTREE.


- Nếu giá trị của tham số chứa các ký tự mô phỏng * và ? thì thực hiện ngay việc xoá File
bằng lệnh DEL.


Bi 2.<i><b>Dãy con đúng</b></i>


Cho trớc một dãy số bao gồm toàn các số 0 và 1. Dãy này có độ dài nhỏ hơn 255.


1. Viết chơng trình nhập dãy số trên từ bàn phím. Các số đợc nhập liên tiếp từ bàn phím, q trình
nhập dữ liệu kết thúc nhấn phím <Enter>. Nếu việc nhập dữ liệu sai trên màn hình kết quả “Bạn đã nhập
sai, đề nghị nhập lại” và cho phép nhập lại ngay dữ liệu.


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

3. Một dãy con đúng bậc 1 của dãy trên đợc coi là một dãy con liên tục bất kỳ của dãy trên bao
gồm toàn các số hạng giống nhau ngoại trừ 1 phần tử. Hãy tính độ dài lớn nhất của một dãy con đúng
bậc 1 của dãy trên.


<i>Yêu cầu kỹ thuật</i>: Chơng trình phải đợc đặt tên là B2.PAS


Bµi 3.<i><b>Chuyển dịch quân cờ</b></i>


Cho mt bn c vuụng 8 x 8 trên đó cho trớc một số qn cờ. Ví dụ hình sau vẽ một bàn cờ nh
vậy:



  


   


   


 




  


  


  


Chúng ta cần chuyển vị trí của một quân cờ sang một vị trí rỗng khác trên bàn cờ. Cơng việc sẽ
thành cơng nếu qn cờ đó đi đợc đến đích sau khi phải đi qua các ơ trống và chỉ đi đợc trên các đờng
thẳng đứng hoặc nằm ngang. Nhiệm vụ của chơng trình là kiểm tra khả năng thành công của nớc đi.


Dữ liệu nhập đợc ghi trên tệp văn bản BANCO.TXT bao gồm 8 dòng, mỗi dịng là một nhị phân
độ dài 8. Vị trí các quân cờ ứng với số 1, các ô trống ứng với số 0. Ví dụ tệp BANCO.TXT ứng với bàn
cờ trên.


01010100
10011001
10100011
00010100
00100000
01010001


10011000
01000110


Chơng trình khi chạy sẽ yêu cầu nhập từ bàn phím vị trí quân cờ cần chuyển và vị trí đích. Vị trí
trên bàn cờ là cặp số tự nhiên XY chỉ ra: X - số thứ tự của cột tính từ trái qua phải và Y - thứ tự hàng tính
từ dới lên. Tiếp theo, chơng trình sẽ kiểm tra khả năng thực hiện của nớc đi. Các khả năng thơng báo của
chơng trình nh sau:


Khơng thành cơng: vị trí ban đầu khơng có qn cờ
Khơng thành cơng: vị trí đích khơng rỗng


Khơng thành cơng: vị trí khơng tìm đợc cách đi
Thành cơng


Víi trêng hỵp cơ thĨ trên ta có thể có các phơng án chạy chơng trình nh sau:
Vị trí quân cờ: 1 2


V trớ ớch: 6 4


Khơng thành cơng: khơng tìm đợc đờng đi
Vị trí qn cờ: 2 3


Vị trí đích: 5 1
Thành cơng
Vị trí quõn c: 1 3
V trớ ớch: 8 2


Không thành công: Vị trí ban đầu không có quân cờ


Yờu cu k thuật: Tệp chơng trình phải đợc đặt tên là B3.PAS



§Ị thi tin học trẻ không chuyên tq lần thứ V-1999
Khối B - Thêi gian: 180 phót


Bµi 1.<i><b>DOS</b></i>


<i>Câu 1</i>. Giả sử đĩa C: khơng bảo vệ cấm ghi và cịn khá nhiều chỗ trống. Khi thực hiện câu lệnh:
COPY A:*.* C:


HÖ thống không báo lỗi.


Theo em, kt lun no trong s các điều kiện nêu sau đây là luôn luôn đúng với mọi trờng hợp:
a) Mọi file có trên đĩa A: đều đợc sao chép sang đĩa C:


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

c) Khơng có file nào đợc sao chép từ A: sang C:


<i>C©u 2. </i>


Giả thiết trên đĩa C: có các đờng dẫn C:\APL\THI và C:\APL\THI\DI
Trong th mục C:\APL\THI có các file chơng trình: CT1.EXE, CT1.COM, CT1.BAT
Trong th mục C:\APL\THI\D1 có file chng trỡnh CT1.EXE


Chơng trình C:\APL\THI\CT1.EXE khi thực hiện sẽ đa ra dòng thông báo 28/07/1999
Chơng trình C:\APL\THI\CT1.COM khi thực hiện sẽ đa ra dòng thông báo 28/07/2000
Chơng trình C:\APL\THI\CT1.BAT khi thực hiện sẽ đa ra dòng thông báo 28/07/2001
Chơng trình C:\APL\THI\D1\CT1.EXE khi thực hiện sẽ đa ra dòng thông báo 28/07/1998


Hiện tại dấu nhắc của hệ điều hành là C:\APL\THI\D1>
Sau khi thực hiện ..\CT1



Trên màn hình sẽ có thông báo nào trong số các thông báo sau:
a) 28/07/1998


b) ‘28/07/1999’
c) ‘28/07/2000’
d) ‘28/07/2001’


e) <i>Bad command or filename</i>


<i>Câu 3.</i>ở ổ đĩa mềm A: có đĩa hệ thống. Dấu nhắc của hệ điều hành là A:\>


Sau khi thực hiện lệnh SYS C: và trên màn hình có thơng báo là hệ thống đã đợc chuyển thành
công. Kết luận nào nêu sau đây là luôn luôn đúng với mọi trờng hợp:


a) Đĩa C: đã trở thành đĩa hệ thống


b) Vẫn có trờng hợp đĩa C: cha thành đĩa hệ thống


<i>C©u 4.</i> Tõ dấu nhắc của hệ điều hành C:\> ngời ta thực hiện lệnh:
ECHO BAZDKFXCOPY A: C:\DA/S


Trờng hợp nào sẽ xẩy ra:


a) Hệ thống sẽ luôn luôn hỏi lại và yêu cầu ta trả lời Y hoặc N trớc khi thực hiện tiếp.
b) Báo sai và không thực hiện tiếp câu lệnh,


c) Sao chép mà không hỏi thêm gì


d) H thng s hỏi lại và yêu cầu ta trả lời Y hoặc N trớc khi thực hiện tiếp, nếu trên ổ đĩa C:\DA,
cịn nếu đã có th mục C:\DA thì báo trùng tên và không thực hiện tiếp câu lệnh.



<i>Câu 5.</i> Trong th mục C:\D1 chỉ có các file F2.TXT và F3.TXT và khơng có thuộc tính bảo vệ. Dấu nhắc
của hệ điều hành đang là C:\>, để xoá th mục C:\D1 ngời ta tiến hành một trong các cách sau:


a) RD C:\D1
b) DEL C:\D1


c) DEL C:\D1\*.* và sau đó thực hiện đợc yêu cầu đã nêu?
d) DELTREE C:\D1


Trong số các cách làm trên, những cách nào thực hiện đợc yêu cầu đã nêu?


Em hãy dùng một hệ soạn thảo tuỳ ý để soạn thảo các trả lời và ghi vào file văn bản BL1.TXT dới
CAU . . .: lựa chọn


VÝ dô:


CAU1: a)
CAU2: b)
CAU3: a)
CAU4: a), b)
CAU5: b), c)


<i>(Chú ý: đây chỉ là ví dụ, có thể khơng là đáp án của các câu trên)</i>
<i>Hãy lập trình thực hiện các bài tốn sau:</i>


Bµi 2.<i><b>Y3K</b></i>


Cho số ngun N trong phạm vi từ 1000 đến 999999. Cần xác định số này có phải là thơng tin về một ngày tháng có
trong thế kỷ 21 không. (Thế kỷ 21 bắt đầu từ 1 tháng 1 năm 2001 và kết thúc vào ngày 31 tháng 12 năm 3000. Biết rằng


2 chữ số cuối của N là chỉ hai chữ số cuối của năm, các chữ số còn lại (ở đầu) xác nh ngy v thỏng.


<i>Ví dụ:</i>


1111 tơng ứng với 1 tháng 1 năm 2011;


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

131192tơng ứng với 13 tháng 11 năm 2092;


32392 Không phải là thông tin về một ngày tháng nào cả;
311198 Không phải là thông tin về một ngày tháng nào cả;
29205 Không phải là thông tin về một ngày tháng nào cả;


<i>Dữ liệu</i>: Nhập vào số N từ bàn phím.


<i>Kết quả</i>: Đa ra màn hình các ngày tháng năm tơng ứng với N hoặc thông báo là KHONG nếu N
không phải là thông tin về một ngày tháng nào cả.


Ví dụ:


Giá trị của N Thông báo ra màn hình tơng ứng


1111
21290
29205


1-1-2011


2-12-2090 HOAC 21-2-2090
KHONG



Bài 3.<i><b>Tổ chức tham quan</b></i>


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

Hội thi tin học trẻ không chuyên toàn quốc lần thứ VI - 2000

<b>Đề thi khối B - Trung học cơ sở</b>



<i>Thời gian làm bài: 180 phút</i>



Lập trình thực hiện các công việc sau đây


<b>Bài 1. Sắp xếp d y số</b>Ã <b>Tên file bài làm: DAYSO.PAS</b>


Cho d·y sè nguyªn


<i>a</i>1, <i>a</i>2, ..., <i>an</i> (<i>n</i>  1000).


Hãy tìm cách thực hiện một số ít nhất phép đổi chỗ hai số hạng bất kỳ của dãy để thu đợc dãy số mà số lẻ đứng ở vị trí lẻ, s chn ng v trớ chn.


<b>Dữ liệu:</b> Vào từ file văn bản DAYSO.INP:


Dòng đầu tiên chứa số nguyên d¬ng <i>n</i>;


 Dịng thứ <i>i</i> trong số <i>n</i> dịng tiếp theo chứa số hạng <i>ai</i> của dãy đã cho (-32767  <i>ai</i> 


32767, <i>i</i> = 1, 2, ..., <i>n</i>).


<b>KÕt quả:</b> ghi ra file văn bản DAYSO.OUT:


Dũng u tiờn ghi số lợng phép đổi chỗ cần thực hiện <i>k</i> (qui ớc <i>k </i>= -1, nếu không thể biến đổi


đợc dãy đã cho thành dãy thoả mãn yêu cầu đầu bài);



 Nếu <i>k</i> > 0, thì dịng thứ <i>j</i> trong số <i>k</i> dòng tiếp theo ghi chỉ số của hai số hạng cần đổi chỗ cho


nhau ở lần đổi chỗ thứ <i>j</i> ( <i>j</i> =1, 2, ..., <i>k</i>).


<b>VÝ dụ:</b>


DAYSO.INP DAYSO.OUT DAYSO.INP DAYSO.OUT


6
1
2
3
4
6
5
1


5 6 41


3
2
5


-1


<b>Bài 2. Thời điểm gặp mặt</b> <b>Tên file bài làm: MEETING.PAS</b>


Một nhóm gồm <i>n</i> bạn học sinh của một lớp tham gia một câu lạc bộ tin học vào dịp nghỉ hè. Biết
rằng khoảng thời gian mà bạn thứ <i>i</i> có mặt tại câu lạc bộ là [<i>ai, bi</i>] (<i>ai<bi</i> tơng ứng là các thời



im đến và rời khỏi câu lạc bộ). Cô giáo chủ nhiệm lớp muốn tới thăm các bạn trong nhóm này.
Hãy giúp cô giáo chủ nhiệm xác định thời điểm đến câu lạc bộ sao cho tại thời điểm đó cơ giáo
có thể gặp đợc nhiều bạn trong nhóm nhất.


<b>D÷ liệu:</b> Vào từ file văn bản MEETING.INP:


Dòng đầu tiên ghi số nguyên dơng <i>n</i> (<i>n</i> 1000);


Dòng thứ <i>i</i> trong sè <i>n</i> dßng tiÕp theo ghi 2 sè nguyên không âm <i>ai, bi , i </i>= 1, 2, ..., <i>n</i>.


<b>Kết quả:</b> Ghi ra file văn bản MEETING.OUT:


Dòng đầu tiên ghi số nguyên dơng <i>k</i> là số lợng bạn đang có mặt ở câu lạc bộ tại thời ®iĨm


cơ giáo đến;


 Trong <i>k</i> dịng tiếp theo ghi chỉ số của <i>k</i> bạn có mặt ở câu lạc bộ ti thi im cụ giỏo n,


mỗi dòng ghi một chỉ sè cđa mét b¹n.


<b>VÝ dơ:</b>


MEETING.INP MEETING.OUT MEETING.INP MEETING.OUT


6
1 2
2 3
2 5
5 7


6 7


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

9 11


<b>Bài 3. Chia bánh</b> <b>Tên file bài làm: CAKE.PAS</b>


Ti buổi sinh nhật của Tuấn có một cái bánh gatơ hình trịn. Bánh đợc viền quanh bởi một loạt
các quả dâu và nho. Một bạn gái bỗng đề xuất một câu hỏi: “Đố các bạn có thể cắt bánh bằng
một nhát dao thành hai phần sao cho số lợng quả dâu trong phần bánh này bằng số lợng quả dâu
trong phần bánh kia và số lợng quả nho trong phần bánh này cũng bằng số lợng quả nho trong
phần bánh kia.”


Bạn hãy lập trình để trả lời câu đố nói trên.








<b>D÷ liệu:</b> Vào từ file văn bản CAKE.INP:


Dòng đầu tiên ghi <i>n</i> là số lợng quả ở trên viền của bánh gatô (<i>n</i> 255);


Dũng th hai ghi dóy gồm <i>n</i> ký tự, mỗi ký tự chỉ là D hoặc N, trong đó ký tự thứ <i>i</i> là D


nếu vị trí thứ <i>i</i> là quả dâu, là N nếu vị trí thứ <i>i</i> là quả nho. Các vị trí gắn quả trên bánh đợc
đánh số từ 1 đến <i>n</i> theo chiều kim đồng hồ bắt đầu từ một vị trí tuỳ ý (xem hình vẽ).


<b>Kết quả:</b> Ghi ra một dịng của file văn bản CAKE.OUT:


 Số -1 nếu khơng tìm đợc cách cắt thoả mãn yêu cầu;


 Ghi 2 số nguyên dơng <i>a,b </i>(<i>a < b</i>) cho biết các quả ở vị trí <i>a, a+1,..,b </i>là các quả thuộc về
cùng một trong 2 phần bánh.


Ví dụ:



CAKE.INP CAKE.OUT CAKE.INP CAKE.OUT


6


DNNNDN 3 5 5DNDDN -1


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10></div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11></div>

<!--links-->

×