1. Trang chủ
  2. » Luận Văn - Báo Cáo

Pascal 1 Mot so bai tap Pascal hay

47 26 0

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

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

THÔNG TIN TÀI LIỆU

BiÓu thøc l«gÝc nãi chung rÊt phøc t¹p vµ nhiÒu khi tån t¹i c¸c biÕn kh«ng ®ãng vai trß t¸c ®éng lªn gi¸ trÞ cña biÓu thøc, tøc lµ gi¸ trÞ cña biÓu høc cã thÓ kh«ng phô thuéc vµo mét sè[r]

(1)

Câu lạc tin học Chơng trình đặt tên CLUB.PAS

“ Cánh cửa câu lạc Tin học luôn rộng mở, cần ban ham thích tin học có chút kiên nhẫn “ - Đó thơng báo Hội đồng khoa học thành phố Informatics Nhiều bạn trẻ nô nức đến ghi tên sinh hoạt Nhng trớc cửa câu lạc cánh cửa với khoá số điện tử Khi bạn đến gần cảm biến hồng ngoại tự động nhận biết kích hoạt Menu trợ giúp hớng dẫn mở cửa hình vi tính đặt sau kính, cho biết: mã vào cửa số có N chữ số, ( Ê N Ê 10), chữ số nhận giá trị từ đến M ( 1Ê M Ê 9) sau K gợi ý, gợi ý có dạng: Code L, Code số có N chữ số, số phạm vi từ đến M; bạn chọn mã Code có L chữ số trùng với mã mở cửa vị trí lấn giá trị Trên hình ghi rõ: K gợi ý vừa đủ để bạn tìm đ ợc mã vào cửa cho ngày hơm

Hãy lập trình giúp bạn u thích tin học xác định khố mở cửa câu lạc Dữ liệu: vào từ file văn CLUB.INP:

Dòng đầu số nguyên N M K

Dòng thứ i K dòng ghi giá trị Codei Li Kết quả: đa file văn CLUB.OUT mã tìm đợc.

VÝ dô:

CLUB.INP CLUB.OUT

3 4 120

(2)

Trị chơi điện tử Chơng trình đặt tên PITON.PAS

Hiếu - em Trung, thích trị chơi điện tử Con Trăn Nội dung trị chơi lới vng kích thớc N*N có trăn M thỏ, ô riêng biệt Ban đầu trăn có độ dài Bằng phím điều khiển Trái ( L), Phải (R), Lên (U), Xuống (D) ngời ta di chuyển đầu trăn sang trái, phải, lên xuống dới, lần bấm đầu trăn chuyển ô, đuôi trăn chuyển ô, nơi có phần thân trăn trớc đuôi Trăn đợc chuyển đông phạm vi lới cho không đợc tự cắt Nếu tự cắt - trò chơi kết thúc.Nếu đầu trăn tới có thỏ, ăn thỏ Thỏ to bé, béo gầy khác Mỗi thỏ có lợng ca lo K riêng Sau ăn thỏ có lợng ca lo K, K lần bấm phím điều khiển đuôi trăn nguyên chổ cũ, nh trăn dài thêm K ô Nếu lớn dài ra, trăn ăn thêm thỏ trăn tiếp tục dài ( không bị kết thúc) phần dài thêm tổng l-ợng ca lo thu đợc

Quá mệt mỏi bị em bất chơi chơi lại nhiều lần để xem, Trung định lập ch-ơng trình minh hoạ tự động Để làm đợc việc cần phải xây dựng kịch bản, tức mô tả trạng thái ban đầu lới trình tự bấm phím điều khiển Đángtiếc, lúc vội vàng,

một số kịch Trung khơng thật hợp lý: trăn tự cắt làm trị chơi kết thúc chừng Ngồi ra, kịch khơng có sai sót khác Hãy kiểm tra xem với kịch cho trớc trò chơi kết thúc sau lần bấm phím thứ Nếu khơng mâu thuẫn trị chơi kết thúc sau lần bấm phím cuối Để mơ tả tạng thái lới, dịng cột đơch đánh số từ tới N từ xuống dới từ trái qua phải

D÷ liƯu: vào từ file văn PITON.INP: Dòng số nguyên N M ( Ê

N £ 50, £ M £ 50),

 Dịng thứ chứa toạ độ đầu

trăn: X1, Y1, X2, Y2 (ẵX1-X2ẵ+ẵY1-Y2ẵ= 1), Dòng thø i M dßng tiÕp theo: chøa

số nguyên Ai Bi Ci - ô chứa thỏ thứ i

l-ợng ca lo nó, ( 1Ê Ai, Bi £ N, £ Ci

£ 10),

 Các dịng tiếp theo: dịng mơ tả phím bấm gồm ký tự số ký tự L, R, U, D số nguyên dơng xác định số lần bấm liên tiếp phím

Các liệu dòng cách dấu cách

Kết quả: đa file văn b¶n PITON.OUT sè

ngun, xác định thời điểm trị chơi kết thúc Ví dụ 1:

PITON.INP PITON.OUT

5 17

(3)

R . .R P PR

R . .RP P R

R . .PP . R

R P . .P .PP . R

PPP .P . . R

P P P P R

. . . . PPPP

Sau lÇn bÊm 10 14

. . . P .PPP

. . . PP P PP

. . . PP .P XP

Sau lÇn bÊm 15 16 17 VÝ dô 2:

PITON.INP PITON.OUT

3

(4)

Hội nghị bàn trịn Chơng trình đặt tên CONF.PAS

Tổng th ký Đại hội đồng Liên hợp quốc triệu tập họp có N nhà ngoại giao N tổ chức tham gia Các đại diện ngoại giao đợc bố trí ngồi quanh bàn trịn Giữa số tổ chức có quan hệ căng thẳng, khơng thể xếp họ ngồi cạnh nhau đợc Thông tin quan hệ tổ chức đợc cho dới dạng cặp số nguyên i j, tổ chức có quan hệ căng thẳng

Hãy lập trình giúp Tổng th ký Liên hợp quốc bố trí chổ ngồi quanh bàn họp Các tổ chức đợc đánh số từ tới N, < N Ê 500)

Dữ liệu: vào từ file CONF.INP, dòng chứa số nguyên N, dòng sau, dòng cặp số i j , cho biết đại diện i j khơng ngồi cạnh đợc Kết thúc dịng chứa số

Kết quả: đa file CONF.OUT: Nếu khơng có cách bố trí thoả mãn u cầu đa thơng báo KHONG CO, trờng hợp ngợc lại - đa dãy N số nguyên xác định vị trí ngồi cạnh quanh bàn trịn

VÝ dơ:

CONF.INP CONF.OUT

11 11 10

(5)

Mã hố kép Chơng trình đặt tên

ENCRYPT.PAS

Để đảm bảo nội dung trao đổi qua E-mail tránh đợc cặp mắt tị mị khơng cần thiết Alice thoả thuận với bạn cách mã hố nh sau:

 Xoá tất dấu cách ký tự chữ cái, chuyển nội dung nhận đợc sang chữ in hoa,

 Đẩy phải S vị trí: Thay chữ văn chữ đứng sau S ( Ê S Ê 25) vị trí chữ tiếng Anh, việc xác định chữ thay đợc tiến hành vòng tròn, sau Z A,

 Chia văn nhận đợc thành nhóm M ký tự ( Ê M Ê 20) ( nhóm cuối M ), đảo ngợc trình tự viết ký tự nhóm,

 Chia văn nhận đợc theo nhóm ký tự viết cách dấu cách, dòng chứa 10 nhóm ( trừ dịng cuối hơn)

Để ngời nhận giải mã, văn mã hoá đợc truyền kèm với đoạn nội dung trớc mã hoá (Khoá giải mã).

Ví dụ: Văn ban đầu Meet me in St Louis, Louis vµ S = 2, M = 6, kết bớc mà hoá là: Meet me in St Louis, Louis.

MEETMEINSTLOUISLOUIS

OGGVOGKPUVNQWKUNQWKU

GOVGGOQNVUPKWQNUKWUK

GOVGG OQNVU PKWQN UKWUK Văn đợc truyền với khố LOUIS

Hãy lập trình xác định tham số S M dùng để mã hố Nếu văn khơng thể giải mã đợc ( lỗi mã hoá hay từ khoá sai) thỡ a thụng bỏo NO

Dữ liệu: Vào từ file văn ENCRYPT.INP:

Dũng u tiờn số nguyên N cho biết số nhóm văn mã hoá ( Ê N Ê 200),

 Các dòng tiếp theo: văn mã hố,  Dịng cuối cùng: Khố giải mã

KÕt quả: Đa file văn ENCRYPT.OUT dòng chứa số nguyên S M, cách

nhau dấu cách thông báo NO, giải mã đợc

VÝ dô:

ENCRYPT.INP ENCRYPT.OUT

4

GOVGG OQNVU PKWQN UKWUK LOUIS

TÝnh thuÕ

Để tăng ngân sách qua việc thu thuế đảm bảo dộ tin cậy cao việc xử lý tự động khai, phủ quần đảo TháI Bình Dơng định áp dụng biểu thuế nh sau: Nếu X giá trị thuế mức cũ Y giá trị thuế mới, Y phảI thoả mãn điều kiện sau:

 Y  X, Y - nguyªn,

(6)

Không tồn số nguyên Z < Y thoả mÃn điều kiện HÃy lập trình tính giá trị thuế theomức thuế cũ

Dữ liệu: Vào từ file VAT.INP: Dòng đầu: số nguyên N,

Dòng thứ 2: N số nguyên d1 d2 dn Các số dòng cách dấu cách,

Dòng thứ 3: X ( X > 0), không 50 chữ số Kết quả: Đa file VAT.OUT giá trị Y.

VÝ dô:

VAT.INP VAT.OUT

3 20

(7)

§ång nghiƯp

Để đánh giá hiệu ứng dụng tin học vào đời sống, ngời ta tổ chức hội thảo lớn qua mạng máy tính, ngời tự trao đổi ý kiến trực tiếp đơi Có N ngời tham dự hội thảo (1 < N Ê 30 000), đánh số từ đến N Những ngời tham dự hội thảo đợc chia thành lớp: Nhà Doanh nghiệp Nhà Tin học Ban tổ chức ghi biên thống kê dới dạng dãy phân loại P1, P2, P3, , PM, PK cặp số i j, Ê i Ê N, Ê j Ê N, Ê K Ê M Nếu i > 0, cặp i j nói lên ngời i ngời j đồng nghiệp ( tức thuộc lớp nghề khacs nhau) Nếu i = 0, có nghĩa ý kiến ngời j có điểm đáng lu ý ngời ta cần biết thời điểm chắn j có ngời đồng nghiệp ngời ngành khác

Có thể có PL ghi thơng tin mâu thuẫn với PK trớc ngời ta bỏ qua nó, coi nh PL không tồn

VÝ dô: P I j

1

2

3

4

5

6

7

8

P4 = (4, 5) mâu thuẫn với P2 P3 nên ngời ta bỏ qua nó, P7 bị bỏ qua mâu thuẫn với thơng tin trớc P5 địi hỏi xác định xác có ngời đồng nghiệp với ngời ngành khác Trong trờng hợp xác định rõ đồng nghiệp với 2, nhng biết xác có ngời khác nghề với ( 5)

Yêu cầu lập trình xác định số lợng ngời đồng nghiệp khác ngành cho câu hỏi j biờn bn

Dữ liệu: vào từ file NETCONF.INP: Dòng đầu số nguyên N,

Các dòng sau: dòng cặp số i j, cách dấu cách Số lợng cặp số không vợt 000 000

Kt qu: a file NETCONF.OUT: Mỗi dòng tơng ứng với cặp số j file input, gồm số nguyên L J Q1 Q2, L thứ tự cặp j file input, Q1 - số đồng nghiệp xác định đợc, Q2 - số ngời khác ngành xác định đợc

VÝ dô:

NETCONF.INP NETCONF.OUT

5

1 28 2

2 4 4

bµi tËp tin häc §H KHTN 04/1999

Thêi gian: 180 phót

Bài DÃy số khác nhau.

Xét dÃy số nguyên không âm ( P1,P2,P3,P4) Nếu số không ngời ta cã

thể biến đổi để nhận đợc dãy số (ẵP1-P4ẵ,ẵP1-P2ẵ,ẵP2-P3ẵ,ẵP3-P4ẵ)

Ví dụ: với dãy số ( 0, 1, 0, 2) ta biến đổi nh sau: (0,1,0,2)  ( 2, 1, 1, 2)  (0, 1, 0, 1)  (1, 1, 1, 1)

(8)

H·y lËp tr×nh nhËp sè N ( < N Ê 10) hÃy tìm dÃy số không âm ( P1,P2,P3,P4) cã Pi lín

nhất nhỏ ( i = 1,2,3,4), chuỗi biến đổi nêu thực N lần

D÷ liƯu: vào từ file P4.INP, dòng số nguyên N không âm không 10.

Kết : đa file P4.OUT, dòng gồm số nguyên không ©m N P1 P2 P3 P4 øng víi

tõng dòng file liệu vào

Ví dụ:

P4.INP P4.OUT

3 0

5

Bài Hội nghị bàn tròn.

Tổng th ký Đại hội đồng Liên hợp quốc triệu tập họp có N nhà ngoại giao N tổ chức tham gia Các đại diện ngoại giao đợc bố trí ngồi quanh bàn trịn Giữa số tổ chức có quan hệ căng thẳng, xếp họ ngồi cạnh đợc Thông tin quan hệ tổ chức đợc cho dới dạng cặp số nguyên i j, tổ chức có quan hệ căng thẳng.

Hãy lập trình giúp Tổng th ký Liên hợp quốc bố trí chổ ngồi quanh bàn họp Các tổ chức đợc đánh số từ tới N, < N Ê 500)

Dữ liệu: vào từ file CONF.INP, dòng chứa số nguyên N, dòng sau, dòng

một cặp số i j , cho biết đại diện i j không ngồi cạnh đợc Kết thúc dòng chứa số

Kết quả: đa file CONF.OUT: Nếu cách bố trí thoả mÃn yêu cầu đa th«ng

báo KHONG CO, trờng hợp ngợc lại - đa dãy N số nguyên xác định vị trí ngồi cạnh quanh bàn trịn

VÝ dô:

CONF.INP CONF.OUT

11 11 10

1 7 10 10 10 0

Bµi Ma trËn lín nhÊt

XÐt hai ma trËn A vµ B cïng kÝch thíc Nãi ma trËn A lín h¬n ma trËn B, so sánh theo dòng phần tử tơng ứng A B, cặp phần tử khác đầu tiên, phần tử ma trận A lớn phần tử tơng ứng B

Ví dô: Cã A B 5 1 6 -1 Ta cã A > B , v× A[2,3] > B[2,3]

Cho ma trận A kích thớc M*N ( Ê M,N Ê 387) Với phép biến đổi: - Đổi chổ dòng,

- Đổi chổ 2cột,

có thể tạo dÃy ma trận xếp theo thứ tự tăng dần

HÃy tìm phần tử cuối ( A[M,N] ) ma trận lớn

Dữ liệu: vào từ file MT.INP:

- Dòng đầu : M N,

- Các dòng sau: chứa phần tử A, xếp theo dòng, phần tử cách dấu cách nhóm dấu xuống dòng

Cỏc phn t A khác đôi một, nguyên thuộc phạm vi Longint

Kết quả: đa file MT.OUT số ngun A[M,N] tìm đợc.

VÝ dơ: MT.INP MT.OUT

2

(9)

2

Bài Số nhị phân Fibonacci

XÐt d·y sè Fibonacci F0, F1, F2, F3, ,Fn, víi F0 = F1 =

Một số nguyên dơng X biểu diễn cách đơn trị dới dạng: X = iFi,

trong i = (0, 1), i*i+1 =

Dãy (1, 2, ,n) đợc gọi dạng biểu diễn Nhị phân Fibonacci số X

Cho hai số nguyên X Y dới dạng Nhị phân Fibonacci ( X Ê Y) HÃy tìm X*Y X div Y dới dạng biểu diễn Nhị phân Fibonacci

Dữ liệu: vào từ file FIB.INP, gồm dòng, dòng xây ký tự ( 0, 1), dòng đầu X dạng biểu

diễn Nhị phân Fibonacci, dòng thứ Y dạng biểu diễn Nhị phân Fibonacci Độ dài xâu không 200

Kết quả: đa file FIB.OUT:

- Dòng đầu: X*Y (dạng biểu diễn Nhị phân Fibonacci), Dòng thứ 2: X div Y (dạng biểu diễn Nhị phân Fibonacci) VÝ dô: FIB.INP FIB.OUT

10100 101000001

1010

bµi tËp tin häc ĐHKHTN -1999 Bài Cửa sổ văn b¶n

Xét văn T gồm N ký tự ( N Ê 1000000, N không cho trớc) văn P gồm M ký tự ( < M Ê 100) Cửa sổ độ dài W đoạn văn gồm K ký tự liên tiếp T ( M Ê K Ê 1000) Nói cửa sổ W chứa mẫu P, tồn cách xoá số ký tự W để nhận đợc P

Hai cửa sổ T gọi khác nhau, chúng vị trí khác T Hãy xác định số cửa sổ khác văn T chứa P

D÷ liƯu :

- File WINDOWP.INP:

+ dòng đầu chứa số nguyên W M, + Dòng thứ chứa M ký tự văn P; - File WINDOWT.TXT chứa văn T

Kt qu: a file WINDOW.OUT số nguyên, xác định số lợng cửa sổ tìm đ-ợc theo yêu cầu

VÝ dô :

WINDOWP.INP WINDOWT.INP WINDOW.OUT

4 is

This is sample text for the first task on the contest

8

Bài Cửa sổ hình đồ hoạ

Một hình đồ hoạ có kích thớc 300*200, với điểm gốc toạ dộ (0,0) góc trái Hệ thống hoạt động chế độ đa nhiệm, có N chơng trình hoạt động, chơng trình có cửa sổ riêng Chơng trình thứ i có cửa sổ xác định nhóm giá trị ngun khơng âm ( X1i, Y1i, X2i, Y2i), ( X1i, Y1i) toạ độ trái (X2i, Y2i) toạ độ dới phải cửa sổ ( Ê X1i < X2i < 300, 0Ê Y1i < Y2i < 200) Các cửa sổ rời nhau, phủ kín giao phần Để kích hoạt chơng trình mới, ngời ta cần khai báo cửa sổ khơng có điểm chung với cửa sổ có Hãy xác định toạ độ đỉnh trái dới phải cửa sổ cho diện tích cửa sổ ln nht

(10)

- Dòng đầu chứa sè nguyªn N ( < N £ 100),

- N dòng sau: dòng chứa số nguyên X1 Y1 X2 Y2, xác định cửa sổ

Kết : đa file GW.OUT:

- Dũng đầu: số nguyên S, xác định diện tích cửa sổ tìm đợc S = 0, khơng thể tìm đợc cửa sổ đáp ứng yêu cầu đề

- Trong trờng hợp S > 0, dịng thứ chứa số nguyên, xác định cửa sổ tìm đợc

VÝ dô:

GW.INP GW.OUT

10000

0 149 99 99 99 199

100 40 299 199

Rải sỏi Bài làm đặt tên STONE.PAS

Xét trò chơi rải sỏi với ngời chơi nh sau: Cho T đống sỏi gồm K viên Luật đi:

 bớc ngời ta lấy viên sỏi từ đống sỏi cho trớc, đặt vào nút tuỳ chọn,  Nếu nút P có r nút tất nút có sỏi ngời ta gom tất sỏi r

nút lại, đặt viên vào nút P, xố tất nút hồn trả r-1 viên sỏi lại vào đống ban đầu Nh sau bớc nút P trở thành nút

 Trò chơi kết thúc đặt đợc viên sỏi vào nút gốc

Yêu cầu, dựa vào cấu trúc T xác định số viên sỏi tối thiểu cần có ban đầu để trị chơi kết thúc đợc Cây có N nút ( < N Ê 400), nút đợc đánh số từ tới N, nút gốc đợc đánh số

D÷ liƯu: vào từ file văn STONE.INP:

Dòng đầu: số nguyên N,

Dòng thứ i N dòng có dạng:

i m i1 i2 im,

trong đó: m - số nút nút i, m  0,

i1 i2 im - c¸c nót cđa nút i

Các số dòng cách dấu cách

Kết quả: đa file STONE.OUT số lợng viên sỏi tối thiểu cần thiết. VÝ dô:

STONE.INP STONE.OUT

7

1 2 2 7

Bài Ngôn ngữ khởi tạo hằng

Xét ngôn ngữ tạo nguyên Ngôn ngữ bao gồm thị: - PLUS1 Khởi tạo +1,

(11)

- INC Tăng nhận đợc lên - DUP Nhân đôi nhận đợc

Với nguyên cho trớc (trong phạm vi Longint), nêu chơng trình câu lệnh tạo ú

Dữ liệu: vào từ file CONS.INP, dòng số nguyên cần tạo.

Kết quả: đa file CONS.OUT Mỗi số nguyên ứng với chơng trình, Dòng đầu chơng

trỡnh l dấu # sau dấu cách cần khởi tạo, dịng chơng trình, câu lệnh dịng Các chơng trình cách dịng trống

VÝ dơ: CONS.INP MT.OUT

#

-5 PLUS1

DUP INC # -5 MINUS1 DUP DUP INC DUP INC

Bài Số nhị phân Fibonacci

Xét dÃy số Fibonacci F0, F1, F2, F3, ,Fn, víi F0 = F1 =

Một số nguyên dơng X biểu diễn cách đơn trị dới dạng: X = iFi,

trong i = (0, 1), i*i+1 =

Dãy (1, 2, ,n) đợc gọi dạng biểu diễn Nhị phân Fibonacci số X

Cho hai số nguyên X Y dới dạng Nhị phân Fibonacci ( X Ê Y) HÃy tìm X*Y X div Y dới dạng biểu diễn Nhị phân Fibonacci

Dữ liệu: vào từ file FIB.INP, gồm dòng, dòng xây ký tự ( 0, 1), dòng đầu X dạng biểu

diễn Nhị phân Fibonacci, dòng thứ Y dạng biểu diễn Nhị phân Fibonacci Độ dài xâu không 200

Kết quả: đa file FIB.OUT:

- Dòng đầu: X*Y (dạng biểu diễn Nhị phân Fibonacci), Dòng thứ 2: X div Y (dạng biểu diễn Nhị phân Fibonacci) Ví dụ: FIB.INP FIB.OUT

10100 101000001

1010

Bài Cửa sổ văn bản

Xét văn T gồm N ký tự ( N Ê 1000000, N không cho trớc) văn P gồm M ký tự ( < M Ê 100) Cửa sổ độ dài W đoạn văn gồm K ký tự liên tiếp T ( M Ê K Ê 1000) Nói cửa sổ W chứa mẫu P, tồn cách xoá số ký tự W để nhận đợc P

Hai cửa sổ T gọi khác nhau, chúng vị trí khác T Hãy xác định số cửa sổ khác văn T chứa P

D÷ liƯu :

- File WINDOWP.INP:

+ dòng đầu chứa số nguyên W M, + Dßng thø chøa M ký tù văn P; - File WINDOWT.TXT chứa văn T

Kết quả: Đa file WINDOW.OUT số nguyên, xác định số lợng cửa sổ tìm đ-ợc theo yêu cầu

VÝ dô :

(12)

4 is

This is sample text for the first task on the contest

8

Vßng trßn con

Cho dãy số nguyên a1, a2, a3, ,an b1, b2, b3, bm ( Ê n,m Ê 100) Các số đợc xếp quanh vòng tròn A B: Các số - quanh vòng tròn A, số bj - quanh vòng tròn B, i = 1,2, , n; j = 1,2, , m Vịng trịn C với số quanh c1,c2, ,ck đợc gọi vòng tròn A (hoặc B), tồn cách xoá bớt số A ( B) để nhận đợc C Hãy tìm vịng trịn C với k lớn Dữ liệu : Vào từ file văn bn CIRCLE.INP:

+ dòng đầu chứa số nguyên n, m, c¸ch Ýt nhÊt dÊu c¸ch, + n dòng : chứa số ai, số dòng, i = 1,2, , n, + m dòng : chứa số bj, số dòng, j = 1,2, , m Kết quả: Đa file văn CIRCLE.OUT:

+ Dòng đầu chứa số nguyên k,

+ k dòng sau: chứa số ci, số dòng, i = 1,2, , k VÝ dô:

CIRCLE.INP CIRCLE.OUT

5

6

2

8 15 10 Bµi D·y 0/1.

Xuất phát từ số A1 = 1, ngời ta xây dựng dãy bít A2, A3, , AN, theo cách sau: Dãy Ai+1 nhận đợc từ dãy Ai cách viết tiếp vào sau chữ số nghịch đảo Ai

A1 = A2 = 10 A3 = 1001 A4 = 10010110

Cho số nguyên K ( phạm vi Longint ) Hãy xác định giá trị bít thứ K AN (với N đủ lớn

D÷ liệu: vào từ file BIT.INP, dòng số nguyên K.

Kết quả: đa file BIT.OUT bít tìm đợc, bít dịng.

(13)

BIT.INP BIT.OUT

6 14

0

Bài Rô bốt thám hiểm

Mt số dự án khả thi thiên niên kỷ sau khai thác tài nguyên khoáng sản thiên thạch tiểu hành tinh gần trái đất.Để thám hiểm, khảo sát đối tợng này, ngời ta phải chế tạo rô bốt đơn giản, hoạt động theo chơng trình cài sẵn phát từ trái đất Một quan nghiên cứu chế tạorô bốt diều khiển lệnh: L - rẽ trái (tính theo hớng chuyển động), R - rẽ phải (tính theo h-ớng chuyển động), U - tiến thẳng, D - quay lui Với lệnh rô bốt di chuyển đơn vị khoảng cách Vùng cần khảo sát đợc kẻ thành lới ô vuông, đợc nhúng vào hệ toạ độ có trục song song với cạnh lới nút lới có toạ độ nguyên Ban đầu rơ bốt đợc đa tới điểm có toạ độ (X0,Y0) hớng theo chiều song song với trục toạ độ Nhiệm vụ phải đa rô bốt rô bốt tới điểm có toạ độ (X1, Y1) K lệnh di chuyển (0 Ê ẵX0 - X1ẵ,ẵY0 - Y1ẵ Ê 16, 0< K Ê 16) Hãy xác định xem tồn chơng trình khác cài đặt vào nhớ rô bốt

Dữ liệu: vào từ file văn ROBOT.INP gồm số nguyên K X0 Y0 X1 Y1, số thuộc phạm vi Integer, cách dấu cách

Kết quả: Đa file văn ROBOT.OUT số nguyên xác định số lợng chơng trình tìm đợc

VÝ dơ:

ROBOT.INP ROBOT.OUT

3 0

Bài Tráo bµi.

Giả thiết có 2n bài, đánh số từ đến 2n Ban đầu đợc theo thứ tự từ đến 2n Quy tắc tráo nh sau: sau lần tráo từ trật tự ban đầu ta có trật tự n+1, 1, n+2, 2, ,2n, n Nh vậy, n nằm vị trí 2, 4, 6, , 2n Các lại vị trí lẽ: 1, 3, 5, , 2n-1 Với số nguyên n cho trớc, sau số lần tráo, ta lại nhận đợc trình tự ban đầu Hãy lập trình xác định số lần tráo để có lại trình tự ban đầu

D÷ liƯu: vào từ file SHUFFLE.INP, dòng số nguyên n ( n < 10000)

Kết quả: đa file SHUFFLE.OUT, dòng số nguyên - kết ứng với dòng t-ơng ứng file liệu vào

VÝ dô:

(14)

10 20

6 20

Bµi Luü thõa sè häc.

Luỹ thừa số học số M theo chữ số N ký hiệu Ar(M,N) số chữ số N cần thiết để xây dựng biểu thức số học nguyên với phép tính +, -, * , / dấu ngoặc tròn (, ) cho kết M Ví dụ, Ar(17,3) = 5, 3*(3+3)-3/3 = 17, cịn Ar(24,1) = 5, (11 + 1)*(1+1) = 24

Chú ý: kết trung gian phải nguyên không âm

Dữ liệu: vào từ file văn APOWER.INP, dòng số nguyªn M N (0 £ M < 1000, Ê N Ê 9)

Kết quả: đa file APOWER.OUT, dòng số nguyên - kết ứng với dòng t-ơng ứng file liệu vào

VÝ dô:

APOWER.INP APOWER.OUT

17 24

5 Bài Băng màu.

Có số lợng khơng hạn chế hình vng khích thớc đơn vị, hình vng có màu số màu xanh ( ký hiệu B), trắng ( ký hiệu W) đỏ( ký hiệu R) Với hình vng này, ngời ta xếp thành băng màu kích thớc 1*N Ví dụ, với N = 6, có băng:

W B B R R B

Từ băng này, ngêi ta x©y dùng ma trËn kỊ :

W B R

W

B 1

R 1

PhÇn tư ma trận kề màu tơng ứng kề băng trờng hợp ngợc lại

Bng mu ny cng cú th biểu diễn dới dạng xâu độ dài N chứa ký tự A, B, C

(15)

Yêu cầu: cho độ dài N băng, ma trận kề số nguyên M, tính số lợng băng khác có xác định băng màu thứ M ( băng đợc đánh soó từ tr i)

Dữ liệu: vào từ file văn ABC.INP, dòng đầu chứa số nguyên N M ( 1£ N £ 30)

Ba dòng , dòng chứa số nguyên xác định ma trận kề theo trình tự lần lợt W B R Các số dòng cách dõớu cỏch

Kết quả: đa file ABC.OUT:

 Dòng tổng số băng màu có,  Dịng thứ 2: Xâu N ký tự xác định băng màu tìm đợc

VÝ dô:

ABC.INP ABC.OUT

3 2

0 1 BWR

1 0 0

§ỉi tiỊn

Nớc Silverland sử dụng hệ thống tiền xu xu có mệnh giá số phơng: 1, 4, 9, , 289 ( = 172 ) Với hệ thống này, để trả 10 xu ta có cách:

 Trả 10 đồng xu,

 Trả đồng xu đồng xu,  Trả đồng xu đồng xu,  Trả đồng xu đồng xu

Nhiệm vụ bạn xác định xem có cách trả số tiền cho trớc Silverland

Dữ liệu: vào từ file văn COIN.INP, gồm nhiều dòng, dòng số nguyên d-ơng không vợt 300

Kết quả: đa file văn COIN.OUT số cách trả ứng với trêng hỵp. VÝ dơ:

COIN.INP COIN.OUT

2 10 30

(16)

Bảng đèn

Cho bảng hình vng, gắn N*N đèn tạo thành lới ô vuông Các hàng cột đ-ợc đánh số từ đến N từ xuốn dới từ tráI qua phải Mỗi hàng cột có cơng tắc bấm Ký hiệu Ri công tắc bấm hàng i Cj - công tắc bấm cột j Khi bấm vào công tắc hàng ( cột) tất đèn hàng (cột ) đổi trạng tháI: từ sáng thành tắt ngợc lại

Cho trớc hai trạng thái đầu cuối bảng, cách bấm đợc nút để chuyển trạng thái bảng từ trạng thái đầu sang trạng thái cuối cho biết khơng tồn cách chuyển

D÷ liệu: vào từ file văn LAMP.INP, dòng đầu sè nguyªn N ( < N £ 50), N dòng sau mô tả trạng thái đầu bảng, dòng N số 1, ứng với trạng thái tắt, ứng với trạng thái bật, số dòng cách dấu cách N dòng mô tả trạng thái cuối bảng (theo quy cách nh trên)

Kt qu: đa file LAMP.OUT Dòng số nguyên xác định số lần bấm nút Nếu khơng có cách bấm dịng chứa số -1 Các dịng tiếp theo: dòng ghi một nút cần bấm, dới dạng R i C j.

VÝ dô:

LAMP.INP LAMP.OUT

4 1 0 1 0 1

4 R C C R 0 0

0 0 0 0 0 0

Kh«i phơc ngc

Cho biểu thức tốn học có nhiều ngoặc tròn lồng Biểu thức ban đầu đợc viết Ai tinh nghịch xố hết tốn hạng phép tính, để lại ngoặc Một ngời khác viết dới ngoặc mở số nguyên cho biết có ngoặc ( đóng lẫn mở ) nằm giữ ngoặc mở ngoặc đóng tơng ứng Ví dụ, từ biểu thức ta có:

( ( ) ( ( ) ( ) ) ( ( ) ) ( ) ) 14 0

(17)

Dòng đầu số nguyên N - số lợng số dÃy, ( < N Ê 1000), Các dòng sau: Các số nguyên không âm cña d·y

Kết quả: đa file BALANC.OUT chuỗi ngoặc tìm đợc dới dạng xâu văn Ví dụ:

BALANC.INP BALANC.OUT

8 ( ( ) ( ( ) ( ) ) ( ( ) ) ( ) ) 14 0

2 0

Phơng trình

Kt qu nghiờn cu ca cơng trình khoa học cho phép xác định đợc hệ số đa thức bậc n: P(x) = a1xn + a2xn-1 + + a1x + an+1 nghiệm x0 ph-ơng trình P(x) = ( Ê n Ê 5, ẵaiẵÊ 1000, ẵx0ẵÊ 10 )

Điều đáng tiếc lập trình ngời ta quên đa dấu cách giá trị xo, nhận đợc xâu gồm ký tự

Hãy tìm cách khơi phục lại kết dựa vào n xâu ký tự nhận đợc Dữ liệu: vào từ file bn EQUATION.INP:

Dòng đầu chứa số nguyên n,

Dòng thứ 2: chứa xâu ký tù sè vµ cã thĨ cã ký tù dÊu + -

Kết quả: đa file EQUATION.OUT giá trị a1, a2, , an+1, x0 , số dòng

Ví dụ:

EQUATION.INP EQUATION.OUT

2

12-153

-15

Khung nhùa

(18)

Khung thứ đợc tạo thành từ n đoạn điểm nối có toạ độ: (x1,y1,z1), (x2,y2,z2), , (xn,yn,zn)

Khung thứ hai đợc tạo thành từ m đoạn điểm nối có toạ độ: (u1,v1,w1), (u2,v2,w2), , (um,vm,wm)

(3Ê n,m Ê 50, toạ độ nguyên nằm phạm vi từ -100 đến 100) Hãy xác định xem tách rời để lấy riêng từngkhung mà không cần phải ca cạnh khung no ú hay khụng

Dữ liệu: vào từ file văn FRAME.INP:

Dòng đầu chứa số nguyên n,

n dòng tiếp theo, dòng chứa số nguyên xi, yi, zi,

Dòng thứ n+2 chứa số nguyên m,

m dòng tiếp theo, dòng chứa số nguyên uj, vj, wj

Dòng thứ 2: chứa xâu ký tù sè vµ cã thĨ cã ký tù dÊu + hc -

Kết quả: đa file FRAME.OUT thơng báo YES tách đợc NO tr-ờng hợp ngợc lại

VÝ dô:

FRAME.INP FRAME.OUT

3 NO

0 0 3 0 1 -1 1 -1 -1

Quan hÖ

Xét tập N đối tợng so sánh đợc (N < 100) Giữa đối tợng a b tồn quan hệ phân loại:

a = b a < b b < a Quan hệ ‘=’ có tính chất đối xứng nên không đợc nêu lại

(19)

c < b < a

Cho số n, xác định số lợng quan hệ phân loại khác

Dữ liệu: vào từ file văn COND.INP, gồm nhiều số nguyên n ( phạm vi từ đến 99), số dòng

Kết quả: đa file COND.OUT số lợng quan hệ phân loại tìm đợc, số dịng

VÝ dô:

COND.INP COND.OUT

2

3 13

Trò chơi màu

Xột trị chơi ngời bảng 10*15 Mỗi bảng có quân màu xanh (B), trắng (W) đỏ (R) Các quân màu ô kề cạnh tạo thành miền màu Các hàng bảng đợc đánh số từ đến 10 từ dới lên trên, cột đợc đánh số từ đến 15, từ trái sang phải

Luật chơi nh sau: ngời chơi chọn miền đồng màu có số ô lớn 1, lấy tất quân miền khỏi bảng dồn quân lại theo bớc:

a) Đẩy quân dọc theo cột xuống trống phía dới chạm biên khơng cịn trống;

b) NÕu có cột trống tịnh tiến tất cột bên phải sang trái ( giữ nguyên hàng), lấp vào cét trèng

Trò chơi kết thúc quân đợc lấy khỏi bàn cờ không tồn miền đồng màu diện tích lớn

Điểm số ban đầu Mỗi lần ngời chơi chọn miền đồng màu lấy đợc m quân điểm số đợc cộng thêm (m-2)2.

Hãy lập trình cách để nhận đợc nhiều điểm từ bảng cho trớc

(20)

KÕt quả: đa file RBWGAME.OUT, dòng ứng với nớc ( lần chọn vùng) Dòng thông tin nớc có dạng:

X i j m d, đó: - X - màu miền,

i, j - toạ độ ô vùng đợc chọn, m - số lợng quân lấy đợc khỏi bảng, d - số điểm nhận đợc bớc

Dòng cuối file kết chứa số nguyên cho biết tổng số điểm nhận đợc số qn cịn lại bảng

VÝ dơ:

RBWGAME.INP RBWGAME.OUT

RRRRRRRRRRRRRRR RRRRRRRRRRRRRRR WWWWWWWWWWWWWWW WWWWWWWWWWWWWWW

BBBBBBBBBBBBBBB BBBBBBBBBBBBBBB

W 1 30 784 R 1 30 784 B 1 30 784 W 1 30 784 R 1 30 784 4920

RRRRRRRRRRRRRRR RRRRRRRRRRRRRRR WWWWWWWWWWWWWWW WWWWWWWWWWWWWWW

(21)

Xét file văn VB.INP, dịng file chứa từ khơng 75 ký tự chữ thờng bảng chữ tiếng Anh Các từ file đợc xếp theo thứ tự từ điển Dãy từ đợc gọi chuỗi, từ sau giống từ trớc nhận đợc cách bổ sung ký tự vào cuối từ trớc Số lợng từ chuỗi đ-ợc gọi độ dài chuỗi

Ví dụ : Chuỗi từ có độ dài 6 i

in int integer integers integers

Yêu cầu: lập trình nhập từ file VB.INP với số lợng từ tớivài trăm nghìn, tìm chuỗi từ dài file

Kết quả: Đa file văn VB.OUT:

 Dòng đầu chứa độ dài chuỗi,

Các dòng sau: dòng chứa từ chuỗi Các từ đa theo thứ tự tăng dÇn cđa

độ dài từ Ví dụ:

VB.INP VB.OUT

abs

an i

i in

in int

ins integer

insert integers

int integers

integer integers integers intel

ChØ thÞ rÏ nh¸nh

(22)

Để kiểm tra khả chơng trình dịch ngời ta định viết câu lệnh phức tạpvà dựa vào thời gian dịch, thời gian thực chơng trình kết đánh giá chất lợng chơng trình dịch

Gọi điều kiện C1, C2, , CN Với N = 2, viết đợc câu lệnh khác nhau:

if C1 then if C2 then A1 else A2 else if C2 then A3 else A4; if C2 then if C1 then A1 else A3 els if C1 then A2 else A4;

Với N cho trớc, xác định xem có câu lệnh rẽ nhánh khác Dữ liệu: vào từ file văn COND.INP, gồm nhiều số nguyên N1, N2, Nk, số dòng

Kết quả: đa file COND.OUT dịng ghi số ngun tìm đợc tơng ứng với dịng liệu vào

VÝ dơ:

COND.INP COND.OUT

1

1

bảng quảng cáo điện tử

Cú N ( < N Ê 100) bảng quảng cáo, bảng có dạng hình chữ nhật Bảng thứ i đợc xác định toạ độ trái ( Xi, Yi) dới phải (Ui, Vi), toạ độ nguyên, không âm không vợt 32767 Các bảng quảng cáo đợc hiển thị bảng thông tin điện tử, lần lợt từ tới N theo chế độ cửa sổ đè lên nhau, bảng nằm d-ới, bảng N nằm Để điều khiển bảng quảng cáo, ngời ta có lệnh sau:

 T i - đa bảng i lên đầu, B i - ®a b¶ng i vỊ ci,

 U i j - Đa bảng i lên trớc bảng i+j, i + j > N phép tơng đơng với phép

T i,

 D i j- Đa bảng i lxuống sau bảng i - j, i - j Ê phép tơng đơng với

phÐp B i,

 R i - Xoay bảng i góc 900, theo chiều kim đồng hồ với tâm quay đỉnh

ph¶i,

 C i - tính diện tích phần thấy đợc bảng i

Sau câu lệnh (trừ lệnh C ), dãy bảng đợc đánh số lại từ dới lên từ tới N

Hãy lập trình nhập N, toạ độ bảng, lệnh điều khiển, đa kết thực lệnh C, với lệnh C cần đa diện tích phần nhìn thấy đợc tỷ lệ phần trăm phần nhìn thấy so vi ton bng

Dữ liệu: Vào từ file văn RECLAM.INP:

Dòng đầu : số nguyên N,

N dòng dòng số nguyên X Y U V, Các dòng tiếp theo: dòng chứa lệnh điều khiển

(23)

VÝ dô:

RECLAM.INP RECLAM.OUT

3 800 66.67

10 30 40 10 20 20 60 40 30 U C

Liên lạc vũ trụ

liờn lc vi tu thăm dò tự động ngời ta chuẩn bị danh sách thông báo, đánh số từ trở cài vào nhớ máy tính trạm thăm dị Số lợng thơng báo 000 000 Trạm điều khiển mặt đất tàu thăm dò cần phát số thứ tự thay cho chuyển tồn nội dung thơng báo Thơng tin liên lạc đợc chuyển hệ

thống phát sung Laser định hớng Nhng việc phát xung (tức tín hiệu ) Vì nhà khoa học định phát số ứng với dãy bít có khơng q số Các dãy bít có độ dài 200, đợc xếp lại theo thứ tự tăng dần giá trị nhị phân tơng ứng Số thứ tự dãy bít danh sách số nguyên cần gửi

Hãy lập trình cài vào máy phát chuyển đổi từ giá trị số sang xõu bớt cn phỏt

Dữ liệu: vào từ file IMPULSE.INP:

Dòng đầu số lợng thông báo cần phát R ( R Ê 10000), Các dòng sau chứa số nguyên dơng ( số thứ tự thông

báo), số dòng - c¸ch Ýt nhÊt dÊu c¸ch

KÕt quả: Đa rs file IMPULSE.OUT R dòng, dòng chứa xâu bít ứng với số cần phát Bỏ qua số trớc số xâu, trừ trờng hợp số cần phát kết dợc ghi

Ví dụ:

IMPULSE.INP IMPULSE.OUT

6

1

2 10

3 11

4 100

5 100000110

100

Läc biÕn

Bảng tra cứu mã trao đổi thơng tin

( Tut mËt)

Dòng bít Giá trị

00000

00001

00010

00011

00100

00101

00110

001110 15

(24)

Biểu thức lơgíc nói chung phức tạp nhiều tồn biến khơng đóng vai trị tác động lên giá trị biểu thức, tức giá trị biểu hức khơng phụ thuộc vào số biến đó, biến đợc gọi biến nhiễu biến lại biến thực Ví dụ biểu thức (A or not A) and B phụ thuộc vào B Trong biểu thức A biến nhiễu, B biến thực Hãy lập trình phân tích biểu thức lơ gíc cho trớc, xác định biến thực biểu thức

Biểu thức không 10 biến khác nhau, biến đợc đặt tên chữ in hoa phạm vi từ A đến I, chứa dấu ngoặc tròn ( ) Các phép tính

not, and, or vµ => (2 ký tù, chØ phÐp ”kÐo theo”).

Chó ý:

PhÐp not cã thø tù u tiªn cao nhÊt, phép and or mức u tiên cuèi

cïng lµ phÐp =>,

Biểu thức A => B có dạng tơng đơng not A or B.

Dữ liệu: vào từ file BOOL.INP chứa xâu không 100 ký tự xác định biểu thức lơ gíc Giữa phép tính biến có dấu cách

KÕt qu¶: đa file BOOL.INP dòng : dòng danh sách biến nhiễu, dòng thứ danh sác biến thực, tên biến cách dấu cách Nếu danh sách rỗng ®a sè

VÝ dô:

BOOL.INP BOOL.OUT

( A or not A) and ( B or C) A B C

Ngêi Hµ lan bay

Những thuyền lênh đênh biển không ngời lái, không thuỷ thủ, theo truyền thống biển, đợc gọi ngời Hà Lan bay Sự kiện gặp gỡ Ngời Hà lan bay đợc ghi nhận khắp đại dơng thời đại Nguyên nhân xuất Ngời Hà lan bay có nhiều

Một tàu nghiên cứu nhỏ Viện nghiên cứu Đại dơng gặp bão, bị tai nạn Nhóm cán nghiên cứu đợc cứu thoát kịp thời Do thời tiết xấu nên lai kéo tàu theo ngời cho tàu nghiên cứu bị nhanh chóng bị chìm Nh-ng thật đáNh-ng Nh-ngạc nhiên, sau thời gian Nh-ngời ta phát nhữNh-ng thơNh-ng tin cho thấy tàu cịn nỗi chạy theo chế độ lập trình tự động với tốc độ khơng đổi, có điều khơng biết chơng trình cụ thể đâu Các thông tin từ tàu thơng mại, trạm quan sát từ vệ tinh cho phép cục hoá thời điểm t lới ô vuông toạ độ đỉnh trái (x,y) dới phải ( u,v) có hoăch khơng có tàu q giá Hãy xử lý thông tin nhận đợc để dự báo xem thời điểm T ( T > t) tàu đâu, biết chơng trình điều khiển tàu đơn giản đợc thực lặp vô hạn lần, chu trình điều khiển khơng q đơn vị thời gian Khoảng thời gian lần đổi hớng nguyên, lần đổi hớng tàu quay 450 900 sang phải hay trái theo hớng

Dữ liệu: vào từ file văn FLYH.INP:

Dòng đầu gồm số nguyên N T, N Ê 100, T nguyên dơng,

Dòng thứ i N dòng tiếp theo: chứa số nguyên ti, xi yi ui vi ri,

(25)

Kết quả: Đa file FLYH.OUT toạ độ tàu tời điểm T thông báo NOT FOUND thông tin khơng đủ để xác định xác định đợc vị trí tàu

VÝ dô:

FLYH.INP FLYH.OUT

11 10 12 10

1 1 2 3 10 10 10 1 10 1 6 10 10

Dãy số đặc biệt

XÐt tËp c¸c dÃy N số nguyên dơng không giảm ( N Ê 20),mỗi dÃy số thoả mÃn điều kiện:

Tổng số đầu dãy lớn V cho trớc,  Tổng tất số dãy N2

Các dãy số tập xếp theo thứ tự từ điển đánh số từ trở Ví dụ, với N = V = ta có dãy:

1 2 4 3 2 4 5 3

Với N V cho trớc, xác định số lợng dãy tập xác định dãy theo số thứ tự từ điển K

D÷ liệu: vào từ file văn SET.INP:

Dòng đầu: số nguyên N V,

Các dòng sau: dòng số nguyên K

Kết quả: ®a file SET.OUT:

(26)

 C¸c dòng sau: dòng dÃy ứng với K tờn ứng liệu vào, số

dòng cách dấu cách Ví dụ:

SET.INP SET.OUT

3

5 4

B¶o tån di s¶n văn hoá

bo tn di sn hoỏ dân tộc Bộ Văn hố tổ chức đồn công tác tới vùng sâu , lễ hội địa phơng đặc biệt vùng đồng bào dâ tộc ngời ghi âm thu hình dân ca, điệu múa, nghi lễ văn hố Thơng tin thu đợc đ-ợc ghi lên đĩa CD ROM để bảo quản lâu dài Mỗi băng hình tiếng đđ-ợc ghi thành file riêng đĩa Để thuận tiện lu trữ quản lý, ngời ta cố gắng sử dụng đĩa tốt Ngồi ra, đĩa chứa nhiều files, nhng file thu phải nằm gọn đĩa Mỗi đĩa CD ROM có dung lợng 640MB May mắn khơng có file ban đầu có kích thớc vợt q 640MB

Hãy lập trình xác định số đĩa tối thiểu cách ghi ( files ghi đĩa)

D÷ liệu: Vào từ file văn FOLKLOR.INP:

Dòng số lợng files cần lu trữ N, ( N £ 200),

 Dßng thø i N dòng chứa số nguyên dơng Li - kÝch thíc file thø i

theo đơn vị KB

Kết quả: đa file văn FOLKLOR.OUT:

 Dòng đầu chứa số nguyên K - số đĩa tối thiểu cần dùng,

 Dòng thứ j K dòng sau chứa số nguyên Mj ij1 ij2 ijMj cho biết đĩa thứ j có Mj files chứa files ij1 ij2 ijMj

VÝ dô:

FOLKLOR.INP FOLKLOR.OUT

5 409600 153600

2

3 512000

81920 102400

bµi kiĨm tra tin häc §HSF - 2/1999 Thêi gian: 180

(27)

Bµi I Chun bi

Cậu bé vẽ N ( N Ê 100) vòng tròn, đánh số từ tới N tơ mầu vịng trịn ( có vịng trịn có màu giống nhau), sau nối cặp lại cung định hớng, cung có mầu định Các màu ( cung vòng tròn ) đợc đánh số từ đến 100

Cậu bé chọn số nguyên khác L, K Q nằm phạm vi từ tới N, đặt vào vòng tròn số L K vịng hịn bi, sau bắt đầu di chuyển bi theo quy tắc sau:

- Bi đợc chuyển theo cung có màu trùng với màu vịng tròn chứa viên bi thứ 2, - Bi đợc chuyển theo chiều cung,

- Hai viên bi không đợc đồng thời vịng trịn, - Khơng thiết phải di chuyển lần lợt viên bi,

- Quá trình di chuyển kết thúc, hai viên bi tới vòng tròn Q

Hóy lập trình xác định cách di chuyển để chấm dứt q trình sau số bớc chuyển D liu: vo t file BI.INP:

- Dòng đầu: số nguyên N L K Q,

- Dòng thø 2: N sè nguyªn C1, C2, , CN, Ci màu vòng tròn i,

- Dòng thứ 3: số nguyên M ( Ê M £ 10 000),

M dòng sau: dòng số nguyên Ai Bi Di , xác định cung màu Di từ vòng tròn Ai tới vòng tròn Bi

Các số dòng dấu cách Kết quả: đa file BI.OUT:

- Dịng đầu: CO KHONG, cho biết q trình có kết thúc đợc hay khơng, - Nếu dịng đầu CO dịng chứa số ngun xác định số bớc chuyển tối thiểu Ví dụ:

BI.INP BI.OUT

5 CO

2

8 2 5 3 2 3

Bµi Tỉng nguyªn tè

XÐt d·y sè nguyªn 1, 2, 3, , N ( £ N Ê 10 000) HÃy phân nhóm số d·y cho sè nhãm lµ Ýt nhÊt vµ tỉng số nhóm số nguyên tố Chú ý: số nguyên tố

Ví dơ: Víi N = 8, ta cã thĨ chia thµnh nhãm: nhãm mét gåm2 vµ 5, nhãm hai gåm số lại. Dữ liệu: vào từ file BL2.INP chứa số nguyên N.

Kết quả: đa file BL2.OUT N số nguyên, số dòng, dòng thø i cho biÕt sè i thuéc nhãm nµo. VÝ dô: Bl2.INP BL2.OUT

8 2 2 2 

bµi kiĨm tra tin häc §HSF - 2/1999 Thêi gian: 180

  

Bµi I Chun bi

Cậu bé vẽ N ( N Ê 100) vòng tròn, đánh số từ tới N tơ mầu vịng trịn ( có vịng trịn có màu giống nhau), sau nối cặp lại cung định hớng, cung có mầu định Các màu ( cung vòng tròn ) đợc đánh số từ đến 100

Cậu bé chọn số nguyên khác L, K Q nằm phạm vi từ tới N, đặt vào vòng tròn số L K vòng hịn bi, sau bắt đầu di chuyển bi theo quy tắc sau:

- Bi đợc chuyển theo cung có màu trùng với màu vịng trịn chứa viên bi thứ 2, - Bi đợc chuyển theo chiều cung,

- Hai viên bi không đợc đồng thời vịng trịn, - Khơng thiết phải di chuyển lần lợt viên bi,

- Quá trình di chuyển kết thúc, hai viên bi tới vòng tròn Q

(28)

- Dòng đầu: số nguyên N L K Q,

- Dòng thứ 2: N số nguyên C1, C2, , CN, Ci màu vòng tròn i,

- Dòng thứ 3: số nguyên M ( £ M £ 10 000),

M dòng sau: dòng số nguyên Ai Bi Di , xác định cung màu Di từ vòng tròn Ai tới vũng trũn Bi

Các số dòng dấu cách Kết quả: đa file BI.OUT:

- Dòng đầu: CO KHONG, cho biết q trình có kết thúc đợc hay khơng, - Nếu dịng đầu CO dịng chứa số ngun xác định số bớc chuyển tối thiểu Ví dụ:

BI.INP BI.OUT

5 CO

2

8 2 5 3 2 3

Bài Tổng nguyên tố

Xét dÃy sè nguyªn 1, 2, 3, , N ( £ N £ 10 000) H·y ph©n nhãm số dÃy cho số nhóm tổng số nhóm số nguyên tố Chú ý: số nguyên tè

VÝ dơ: Víi N = 8, ta cã thĨ chia thµnh nhãm: nhãm mét gåm2 vµ 5, nhóm hai gồm số lại. Dữ liệu: vào từ file BL2.INP chứa số nguyên N.

Kết quả: đa file BL2.OUT N số nguyên, số dßng, dßng thø i cho biÕt sè i thuéc nhãm nµo. VÝ dơ: Bl2.INP BL2.OUT

8 2 2 2 

Đề thi chọn đội tuyển tin học ĐHSF - 1998

Thêi gian: 180

   Bµi Chn ho¸ sè

Cho số nguyên dơng S hệ 10, có N chữ số ( N < 21) Số S đợc gọi dạng chuẩn, thoả mãn điều kiện sau:

- Kh«ng chia hÕt cho3, - Kh«ng chia hÕt cho7,

- Kh«ng chøa số số dạng biểu diễn hệ 10, - Không chứa dÃy liên tiếp chữ số chữ số giống Ví dụ: Các sè ë d¹ng chuÈn: 22, 190

Các số không dạng chuẩn: 31, 76, 12224, 411111110 Để chuẩn hố số, có phép biến đổi sau:

A) Chia cho 3, số chia hết 3; B) Chia cho 7, số chia hết 7;

C) Xoá chữ số ( xoá chữ số vô nghĩa đầu), có; D) Xoá chữ số ( xoá chữ số vô nghĩa đầu), có;

E) Xoá nhóm chữ số giống (và xoá chữ số vô nghĩa đầu), có;

F) Xoá nhóm chữ số giống (và xoá chữ số vô nghĩa đầu), có

Nu tt chữ số bị xố coi nhn c s

Các quy tắc nói áp dụng theo trình tự nhiỊu lÇn

(29)

hố để nhận đợc số chuẩn hoá lớn

Dữ liệu: vào từ file TEXT BL3.INP, gồm xâu độ dài N biễu diễnsố S hệ 10. Kết quả: Đa file BL3.OUT, gồm dòng:

- Dòng đầu: số chuẩn hố lớn tìm đợc,

- Dịng thứ 2: Xâu ký tự phạm vi từ A đến F, xác định phép biến đổi theo

trình tự áp dụng

Ví dụ: BL3.INP BL3.OUT

999 11

ACA Bµi KiĨm tra ngc

Cho biểu thức khơng q 10 000 ký tự, có sử dụng cặp ngoặc: ( )

[ ] { }

(* *) ( chó ý: hai ký tù viÕt liỊn coi dấu ngoặc)

Gia hai dấu ngoặc có ký tự Các cặp ngoặc (mở đóng tơng ứng) rời nhau, lồng Ví dụ X biểu thức biểu thức (X) {X}, X() biểu thức

Biểu thức đúng: ( ( a)[*** ]{}) Biểu thức sai: (()(*(*)

Với biểu thức cho trớc xác định xem hay sai sai bắt đầu sai từ ký tự th my

Dữ liệu: vào từ file TEXT BL4.INP, chứa ký tự biểu thức cần kiểm tra

Kết quả: Đa file BL4.OUT xâu 'DUNG' 'SAI', trờng hợp sai thì sau số nguyên xác định vị trí chứa lỗi

VÝ dô 1: BL4.INP BL4.OUT

((){}[aaa]) DUNG

VÝ dô 2: BL4.INP BL4.OUT

(()[b+](*(+ *)) SAI 13

tæng luü thõa

Một học sinh say mê tin học nhận thấy tổng SK(N) = 1K + 2K + 3K + + NK (1) có cơng thức đẹp với K = Ví dụ, với K = có Với K = vấn đề tỏ hấp dẫn:

13 = 12 13 + 23 = 32 13 + 23 + 33 = 62 13 + 23 + 33 + 43 = 102

Nh thay việc tính tổng luý thừa iK tốn nhiều thời gian việc tính giá trị đa thức bậc K+1 đợc hay khơng? Nói cách khác, có tồn dạng biểu diễn:

trong Ai M - nguyên

Kết khảo sát cho thấy công thức thật tồn Đáng tiếc, sơ ý, hệ thống bị nhiễm vi rút th mục chứa chơng trình bị hỏng, khơng truy nhập đợc Bạn lập trình giúp em học sinh khơi phục lại việc tính hệ số công thức biểu diễn dạng (2) với M ngun dơng nhỏ

D÷ liệu: vào từ file văn SUM.INP, gồm nhiều dòng, dòng số nguyên K (1 Ê K £ 20)

S2(N) = N (N +1)(2 N +1)

6

SK(N )=

M(AK +1N K

(30)

Kết quả: đa file văn SUM.OUT, dòng file ứng với dòng file liệu vào, chứa K+3 số nguyªn M AK+1 AK AK-1 A1 A0, c¸c sè c¸ch Ýt nhÊt dÊu c¸ch

VÝ dô:

SUM.INP SUM.OUT

1

2 36 01

Bµi tËp tin häc §HKHTN - 11/1998

Thêi gian: 180 phót   

Có N phịng ( N Ê phòng đợc sơn số mầu ký hiệu chữ A,B,C,D,E,F,G,H,I,Jvà M ô tô mát ( M Ê 30 ), tơ mát có danh sách phịng mà phục vụ Ơ tơ mát nhận biết mầu phòng sơn lại phòng thành màu danh sách màu nêu trên, phịng có màu J đợc sơn thành màu A Trình tự phục vụ phịng tiến hành theo trình tự nêu danh sách phục vụ Một tơ mát, đợc kích hoạt lần lợt sơn hết phịng mà phải phục vụ Thời gian sơn phòng nh với tơ mát với phịng, đợc tính đơn vị thời gian Thời gian chuyển phịng coi khơng đáng kể Hãy nêu trình tự kích hoạt tơ mát cho sau khoảng thời gian ngắn có thể, chuyển phịng từ màu ban đầu sang màu định cuối Nếu tơ mát tới sơn phịng u tiên tơ mát có số hiệu nhỏ làm trớc, ô tô mát chờ đợi Tại thời điểm kích hoạt đồng thời nhiều ụ tụ mỏt

Dữ liệu: vào từ file AUTOMAT.INP: - Dòng đầu: M,

- Dòng thứ 2: Xâu N ký tự màu ban đầu phòng, - Dòng thứ 3: Xâu N ký tự màu cuối phòng,

- M dũng tip theo: dịng dãy khơng q N số ngun xác định danh sách (và trình tự) tơ mát phục vụ, dịng thứ i nhóm ứng với tơ mỏt th i

Kết quả: đa file AUTOMAT.OUT:

- Dòng đầu: tổng thời cần chờ đợi để phòng đợc sơn thành màu định Dòng chứa số -1 vơ nghiệm

- Các dịng sau: dãy số nguyên kết thúc số 0: Ti K1 K2 Kp , Ti - thời điểm kích hoạt, Kj - tơ mỏt cn kớch hot

Các dòng đa theo thứ tự tăng dần Ti - Kết thúc dßng chøa mét sè

VÝ dơ:

AUTOMAT.INP AUTOMAT.OUT

3

ABCD

BDFG

1

4

C©n b»ng

(31)

Dữ liệu: Vào từ file văn EQUAL.INP: Dòng chứa số nguyên N,

Các dòng sau: chứa số nguyên dÃy, dòng chứa nhiều số, số dòng cách dấu cách

Kết quả: Đa file EQUAL.OUT: Dòng ghi số lợng dÃy con,

Các dòng tiếp theo: dòng ứng với dÃy con, ghi số d·y VÝ dô:

EQUAL.INP EQUAL.OUT

4

1 21

Đề thi chọn đội tuyển Hà nội dự thi

Hội thi Tin học trẻ không chuyên toàn quốc 1998

Khèi C: Phỉ th«ng trung häc Thêi gian: 120 phút

Bài 1. Bài toán gặp gỡ Tên file chơng trình: BL1.PAS

Trờn mt li ụ vuụng kích thớc NN ngời ta đặt hai rơbốt A B Rơbốt A đợc đặt góc bên trái, cịn rơbốt B đợc đặt góc dới bên phải lới Mỗi ô lới chứa số chứa số Tại bớc, rơbốt di chuyển lên trên, xuống dới, sang trái, sang phải (không đợc di chuyển theo đờng chéo) ô chứa số Hai rôbốt gặp chúng đứng ô Hai rôbốt bắt đầu di chuyển đồng thời, lợt hai rôbốt phải thực việc di chuyển (nghĩa không cho phép rôbốt dừng rơbốt thực bớc di chuyển)

Yêu cầu: Tìm số bớc di chuyển mà hai rơbốt phải thực để gặp

Chú ý: Phụ thuộc vào lới cho, hai rơbốt khơng gặp đợc nhau. Dữ liệu vào: File văn BL1.INP cú cu trỳc nh sau:

Dòng đầu tiªn chøa sè N ( N £ 20)

 Dòng thứ i số N dòng chứa N số (mỗi số 1) đợc ghi cách dấu cách số ghi ô hàng thứ i lới (i=1,2, ,N)

Kết quả: Ghi file văn BL1.OUT nh sau:

 Dòng ghi số K số bớc di chuyển tìm đợc; (qui ớc K=-1 hai rôbốt gặp nhau);

 Trong trờng hợp tìm đợc cách di chuyển để hai rơbốt gặp nhau, hai dòng đợc dùng để mơ tả cách di chuyển hai rơbốt, dịng ghi cách di chuyển rơbốt A cịn dịng thứ hai ghi cách di chuyển rôbốt B Cách di chuyển rôbốt đợc biểu diễn dãy ký tự ký tự chữ T(di chuyển lên trên), B(di chuyển xuống dới), L(di chuyển sang trái), R (di chuyển sang phải) thể đờng rôbốt

VÝ dô:

BL1.INP BL1.INP

5

1 0 0 1 0 1 1 0 1

6

(32)

0 0 1 0 0 1 1 1

BL1.OUT BL1.OUT

-1

DDDDD LLLLL

Bài Chia dừa Tên file chơng trình: BL2.PAS

Một tàu có N tên cớp biển khỉ ghé vào đảo hoang vùng Caribê Trên đảo có nhiều dừa Đám cớp hái đợc đống dừa cho khỉ đứng canh giữ, tất ngủ Nữa đêm, tên cớp thức dậy, đến đống dừa, ném cho khỉ quả, cịn lại chia thành N phần giấu riêng cho phần Lát sau, tên thứ thức dậy, đến bên đống dừa, ném cho khỉ quả, cịn lại chia thành N phần giấu riêng cho phần Lần lợt tên thứ 3, thứ 4, , tên cuối làm nh Đến sáng, nhóm họp lại, ném cho khỉ quả, lại chia thành N phần tên lấy phần Tất lần chia, số dừa chia hết cho N

Hãy xác định tối thiểu tên cớp đợc dừa tổng số dừa bọn cớp hái đợc bao nhiêu?

D÷ liƯu: Vào từ file văn BL2.INP, chúa số nguyên N (N £ 12).

Kết quả: Ghi file văn BL2.OUT gồm N+1 dòng: dòng thứ i N dòng đầu chứa số dừa tên cớp thứ i, dòng cuối chứa tổng số dừa bọn cớp hái đợc Ví dụ:

BL2.INP BL2.OUT

5 4147

(33)

Đề thi chọn đội tuyển Hà nội d thi

Hội thi Tin học trẻ không chuyên toàn quốc 1998

Khối C: Phổ thông trung học Thời gian: 120 phút

Bài 1. WEBS Tên file chơng trình: BL1.PAS

Trong World Wide Web, mi trang chứa móc nối dạng siêu văn cho phép bạn di chuyển sang trang khác Một câu hỏi ngời xây dựng trang là: Từ trang (gọi trang gốc) bạn cần xác định xem thâm nhập đến trang cách lần theo móc nối có trang

Dữ liệu: Vào từ File văn BL1.INP

 Dòng ghi số nguyên dơng N số lợng trang WEB Các trang WEB đợc đánh số từ đến N (N Ê100)

 Dßng ghi số nguyên dơng S số cđa trang gèc

 Dịng thứ i số N dòng chứa số trang mà sử dụng móc nối có trang i ta thâm nhập đến đợc, số số nguyên phạm vi từ đến N đợc ghi cách dấu cách (Qui ớc: Để dịng rỗng từ trang xét khơng có móc nối)

KÕt qu¶: Ghi file BL1.OUT

Dòng ghi K số lợng trang thâm nhập từ trang gốc Dòng tiÕp theo chøa K chØ sè cđa c¸c trang cã thĨ th©m nhËp tõ trang gèc VÝ dơ:

BL1.INP

BL1.OUT

4 1

3

Bài Gơng thần Tên file chơng trình: BL2.PAS Hồng hậu dì ghẻ độc ác hỏi gơng thần mình:

“Gơng ngự tờng Thế gian đẹp đợc dờng nh ta?” Gơng thần trả lời:

“ Xa bà đẹp trần

Ngày Bạch Tuyết muôn phần đẹp hơn. Nhà nàng khuất núi non

Tại nhà bảy lùn xa xa

(34)

Dựa vào năm tra cứu tên Hoàng hậu, đa câu trả lời sau, phụ thuộc vào hoàn cảnh thĨ:

- "Tâu Hồng hậu, khơng có sánh đợc với Lệnh bà!" - "Xa bà đẹp trần,

Ngày mn phần đẹp hơn!" ( vào vị trí ' ' tên ngời đẹp nhất),

- "Tất ngời mất, khơng cịn cả!" Dữ liệu: Vào từ file văn GUONG.INP:

Dòng đầu tiên: số nguyên cho biết năm tra cứu, Dòng thứ 2: tên Hoàng hậu;

Dòng thứ 3: số nguyên N - số ngời danh sách ngời đẹp (N Ê 1000),  Tiếp theo l nhúm N cp dũng:

+ Dòng đầu nhãm thø i chøa tªn ngêi thø i,

+ Dòng thứ nhóm chứa số nguyên si, di, ai, bi, c¸c sè c¸ch Ýt dấu cách

Tên Hoàng hậu ngời: xâu không 12 ký tự

Kt qu: Ghi file văn GUONG.OUT câu trả lời có ba dạng nêu (cho phép dùng tiếng Việt không dấu)

VÝ dô:

GUONG.INP GUONG.OUT

1655 " Xua ba dep nhat tran,

Lida Ngay Bach Tuyet muon phan dep hon!"

4 Anna

1640 15 20 Lida

1630 25 30 Bach Tuyet 1639 16 30 40 Terri

1941 10 20 25

Đề thi chọn đội tuyển Hà nội dự thi

Héi thi Tin häc trẻ không chuyên toàn quốc 1998

Khối B: Trung học sở Thời gian: 120 phút

Bài DOS

H·y x©y dùng file CONFIG.SYS cho phÐp nạp DOS chọn cấu hình:

(35)

c) PAS,

Cấu hình AVR đảm bảo chế độ có nhớ sở lớn để thực ch-ơng trình cần nhiều nhớ vùng thấp

Cấu hình WIN địi hỏi phải thực chế độ sử dụng chung file tăng tốc độ trao đổi vào

Chế độ PAS đòi hỏi tạo nhớ ảo Mb vùng nhớ mở rộng Chế độ mặc định PAS với thời gian chờ đợi giây

KÕt qu¶ ghi file với tên CONFIG.OPT

Bi Kim đồng hồ Tên file chơng trình: DONGHO.PAS Chuyển động kim đồng hồ thật lý thú Kim giây quay đợc vòng tròn (360 độ) sau phút, kim phút quay đợc vòng tròn (360 độ) sau giờ, kim quay đợc vòng tròn (360 độ) sau 12 Em cần lập chơng trình tính góc quay kim đồng hồ góc nhỏ kim kim phút thời điểm cho trớc Đầu vào: Chơng trình cần nhập từ bàn phím thơng tin thời điểm cần tính bao gồm: (số nguyên khoảng từ đến 12), phút giây (các số nguyên khoảng từ đến 60) Chơng trình đợc kết thúc hoạt động ngời sử dụng nhập vào giá trị

Đầu ra: Với thời điểm nhập vào, chơng trình cần đa hình giá trị góc tính đợc với đơn vị đo góc độ (giá trị góc nằm khoảng từ 0.0 đến 360.0) Khn dạng vào-ra đợc minh hoạ ví dụ dới

VÝ dô:

Hay cho thoi diem can tÝnh: Gio : Phut: Giay: Ket qua:

Kim gio : 180.00 Kim phut: 0.00 Kim giay: 0.00

Goc giua kim gio va phut: 180 Hay cho thoi diem can tÝnh:

Gio : Phut: 30 Giay: Ket qua:

Kim gio : 255.00 Kim phut: 180.00 Kim giay: 0.00

Goc giua kim gio va phut: 75.00 Hay cho thoi diem can tÝnh:

Gio : 10 Phut: 17 Giay: 55 Ket qua:

Kim gio : 308.96 Kim phut: 107.50 Kim giay: 330.00

Goc giua kim gio va phut: 158.54 Hay cho thoi diem can tÝnh:

(36)

Chao tam biet!

Đề thi chọn đội tuyển Hà ni d thi

Hội thi Tin học trẻ không chuyên toàn quốc 1998

Khối B: Trung học së Thêi gian: 120 phót

Bµi DOS

Hãy xây dựng file AUTOEXEC.BAT cho phép nạp DOS định hành động ban đầu khác ứng với cấu hình sau CONFIG.SYS:

a) AVR, b) WIN, c) PAS

- Với chế độ AVR cần thực lệnh SCANDISK DEFRAG ( file lệnh tơng ứng ghi th mục C:\DOS)

- Với chế độ WIN cần xóa hết files th mục C:\WINDOWS\TEMP, cần viết câu lệnh cho trả lời Y từ bàn phím

- Với cấu hình PAS cần sang ổ ảo với tên D: toàn th mục C:\ TP sau kích hoạt TURBO.EXE từ th mục D:\TP\BIN

KÕt qu¶ ghi file víi tên AUTOEXEC.OPT

(37)

Trn u kt thúc hai đấu thủ giành đợc chiến thắng Ngời thắng thách đấu ngời giành trận thắng

Trong thách đấu bóng bàn hai đấu thủ A B, kết thi đấu họ đ -ợc ghi nhận xâu gồm không 255 ký tự, ký tự 1, qui ớc ký tự thứ i xâu có nghĩa lần giao bóng thứ i đấu thủ A thắng, ký tự thứ i xâu đấu thủ A thua lần giao bóng (nghĩa đấu thủ B thắng lần giao bóng thứ i) Cần phải xác định kết thách đấu hai đấu thủ

Dữ liệu: Vào từ bàn phím xâu gồm khơng q 255 ký tự biểu diễn kết thi đấu. Kết quả: Đa hình: Với trận đấu: tỷ số séc, ngời thắng trong trận đấu Nếu nh liệu đủ xác định ngời thắng thách đấu bỏ qua phần liệu lại Nếu nh liệu cha đủ xác định kết trận đấu thách đấu cần thông báo

“TRAN DAU CHUA KET THUC” hc

“CUOC THACH DAU CHUA KET THUC” VÝ dụ:

Với xâu nhập vào từ bàn phím:

111111111111100110001100000000001100000001100011110000000 000110000011000001100111100100111111001011100000000000000 1110110101

Kết cần đa h×nh: Tran 1:

Sec 1: A-15 B-2 Sec 2: A-4 B-15 Sec 3: A-6 B-15

Tran dau ket thuc, B thang Tran 2:

Sec 1: A-6 B-15 Sec 2: A-15 B-7 Sec 3: A-3 B-15

(38)

Đề thi chọn đội tuyển Hà ni d thi

Hội thi Tin học trẻ không chuyên toàn quốc 1998

Khối A: Tiểu học Thời gian: 120 phót

Bµi DOS

Em dùng phần mềm soạn thảo văn soạn câu lệnh DOS thực việc chuyển toàn th mục TAYDUKY th mục chủ ổ đĩa C thành th mục th mục GAMES th mục chủ ổ đĩa C

Ghi văn chứa lệnh DOS nói vào tệp có tên MOVE.TXT

Bài Soạn thảo văn bản

Dựng mt phn mm son tho văn tiếng Việt soạn giấy mời bạn đến dự sinh nhật em Ghi kết tệp có tên GMOI với phần mở rộng ngầm định theo phần mềm mà em sử dụng

Bµi

Hãy dùng phần mềm đồ hoạ có sẵn để vẽ trang bìa cho truyện cổ tích Thánh Gióng Lu kết lại tệp TGIONG với phần mở rộng ngầm định theo phần mềm vẽ qui định

Bài Trò chơi

Hóy in cỏc ch A, B, C, D vào chỗ đánh dấu ? bảng chữ sau cho hàng ngang nh hàng dọc bảng thấy có mặt tất chữ A, B, C, D Nếu bảng khơng tìm đợc cách điền ghi “KHONG CO LOI GIAI”

B¶ng B¶ng B¶ng B¶ng B¶ng

A B C D ? ? B C ? ? ? A C ? A ?

A ? ? ? B A ? ? C ? ? D D ? ? ?

? ? ? B A ? ? ? B ? ? A C ? ? ?

? D ? ? ? C ? ? A ? ? C B ? ? A

? A B D D ? ? A ? ? D ? ? ? A ?

(39)

Đề thi chọn đội tuyển Hà nội dự thi

Hội thi Tin học trẻ không chuyên toàn quốc 1998

Khèi A: TiĨu häc Thêi gian: 120 phót

Bµi DOS

Em dùng phần mềm soạn thảo văn soạn câu lệnh DOS thực việc chuyển toàn th mục TP7 th mục th mục PASCAL th mục chủ ổ đĩa C thành th mục th mục chủ ổ đĩa C

Ghi văn chứa lệnh DOS nói vào tệp có tên MOVE.TXT

Bài Soạn thảo văn bản

Dựng mt phn mm son thảo văn tiếng Việt trình bày trang sổ hát với hát mà em yêu thích Ghi kết tệp có tên BAIHAT với phần mở rộng ngầm định theo phần mềm mà em sử dụng

Bµi

Hãy dùng phần mềm đồ hoạ có sẵn để vẽ biểu tợng cho Hội khoẻ Phù trờng em Lu kết lại tệp ICON với phần mở rộng ngầm định theo phần mềm vẽ qui định

Bµi Trò chơi

Hóy in cỏc s nguyờn dng vào chỗ đánh dấu ? bảng số sau cho:

 Tỉng c¸c sè hàng ngang nh hàng dọc

đ-ờng chéo bảng

 Trong bảng có mặt tất số từ đến 16 bảng

có mặt tất số từ đến 25

Nếu bảng khơng tìm đợc cách điền ghi “KHONG CO LOI GIAI”

B¶ng B¶ng B¶ng

16 ? 13 16 ? 13 17 24 ? ? 15

11 10 11 15 23 ? 14 16

? ? ? 12 ? ? 13 20 22

? 14 ? ? ? 14 ? ? ? 12 19 21

11 18 25

Em h·y ghi kÕt qu¶ vào tệp văn có tên TROCHOI.TXT

thi chọn đội tuyển tin học HảI Phòng - 1999

(40)

Xét tập phân số tối giản, có giá trị nằm khoảng từ tới có mẫu số nhỏ N Các phân số đợc xếp theo thứ tự tăng dần Với N cho trớc, số phân số khác S số hữu hạn.Ví dụ, với N = 5, có 11 phân số:

0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1

Hãy lập trình xác định số phân số khác S từ N cho trớc tìm phân số có thứ tự K cho trớc ngợc lại

Dữ liệu: Vào từ file FRACTION.INP:

- Dòng thứ nhất: chứa số nguyên dơng N ( N ( 500), - Các dòng sau: có dạng:

1 K

hc P Q (P < Q) - Kết thúc dòng chứa số

Dịng dạng u cầu tìm fân số có số thứ tự K, dịng dạng u cầu xác định số thứ tự phân số Q/P

Kết quả: đa file FRACTION.OUT: - Dòng thứ nhất: số S,

- Các dòng sau: dòng ứng với dòng file liệu vào ( trừ dòng cuối cùng) có dạng: P Q ( ứng với câu hỏi loại 1)

hoặc K ( ứng với câu hỏi loại 2) Ví dô:

FRACTION.INP FRACTION.OUT

5 11 1

1

2

Sơ đồ Tractenberg

Giáo s Jacob Tractenberg xây dựng sơ đồ cho phép tính cách nhanh chóng đơn giản tích số ngun Ví dụ, để tính 23*14 ta phải dựa liệu trung gian 12, 11 Các số trung gian đợc gọi liệu Tractenberg Từ liệu này, ta dễ dàng suy tích cần tìm 322

§Ĩ hiĨu vỊ bé liệu Tractenberg, ta xét thêm số ví dụ:

241304  32 => 12 11 11 16

6 => 7721728

527  463 => 21 48 55 38 20

=> 244001

3214  5643 => 12 19 34 43 29 28 15

=> 18136602

1245  => 40 32 16

=> 9960

Hãy xác định cách xây dựng liệu Tractenberg từ liệu xác định cặp thừa số nh tớch ca chỳng

Dữ liệu: vào từ file văn MULTP.INP số liệu Tractenberg, số lợng số không 50, ghi hoắc nhiều dòng, số dòng cách dấu cách

Kết quả: đa file văn MULTP.OUT thông tin dạng: Thừa số I * Thõa sè II = TÝch

(41)

VÝ dô:

MULTP.INP MULTP.OUT

8 12 11 11 16 241304*32=772172

8

chu kú tuần hoàn

Xột hm F xỏc nh trờn số nguyên từ đến M ( M Ê 32767) Giá trị hàm nằm khoảng Cho N số nguyên x1, x2, , xN ( < N Ê 1000, Ê xi Ê M, i) Ngời ta xây dựng véc tơ Vj nh sau:

V0 = x1, x2, , xN

V1 = F(X1), F(X2), , F(XN)

V2 = F(F(X1)), F(F(X2)), , F(F(XN))

V3 = F(F(F(X1))), F(F(F(X2))), , F(F(F(XN)))

Vì tập giá trị F hữu hạn, nên đến lúc dãy Vi lặp lại giá trị Hãy tìm độ dài phần trớc xuất chu kỳ độ dài chu kỳ tuần hoàn dãy Vi

Dữ liệu: vào từ file CYCLE.INP: Dòng số nguyên M,

Dòng thứ chøa M sè nguyªn F(1), F(2), , f(M), Dòng thứ chứa số nguyên N,

Dòng thứ chứa N số nguyên x1, x2, , xN Các số dòng cách Ýt nhÊt dÊu c¸ch

Kết quả: đa file văn CYCLE.OUT độ dài trớc chu trình chu kỳ dòng, số cách dấu cách

VÝ dơ:

CYCLE.INP CYCLE.OUT

10

5 1 4

1 10

D·y sè

Ngêi ta x©y dựng dÃy vô hạn số A[1], A[2], theo quy t¾c sau:  A[1] = 0,

 Giả thiết xây dựng đợc dãy A[1], A[2], , A[3M] Khi đó, số A[3M+1], A[3M+2], ,A[3M+1] nhận giá trị tơng ứng A[3M] + 3M, A[3M-1]+3M, , A[1]+3M, A[1]+2*3M, A[2]+2*3M, , A[3M]+2*3M.

Với số nguyên N cho trớc ( Ê N Ê 000 000 000) xác định A[N]

Dữ liệu: vào từ file văn NUMBER.INP, gồm không 50 dòng, dòng số nguyên N

(42)

VÝ dô:

NUMBER.INP NUMBER.OUT

(43)

Đục lỗ

Cho t giy k ca rơ kích thớc 2N * 2N chiều ( Ê N Ê 500) Ngời ta gập tờ giấy N-3 lần, lần gập nh sau: gấp mép dới lên mép để mặt trớc đè lên nhau, sau gấp mép phải đè lên mép trái Nh vậy, sau lần gấp kích thớc chiều tờ giấy giảm Kết cuối ta có xếp giấy kích thớc 8*8 Bằng máy dập, ngời ta đục số ô xếp giấy đồng thời tất lớp Hãy xác định, sau mở lại tờ giấy, ta có phần rời nhau, biết dính với chúng có cạnh chung

Dữ liệu: vào từ file LIST.INP: Dòng chøa sè nguyªn N,

 dịng sau, dịng chứa số 1, ô bị đục Các số cách dấu cỏch

Kết quả: đa file LIST.OUT số nguyên cho biết có phần rời nhau. Ví dô:

LIST.INP LIST.OUT

4 11

(44)

Đẳng cấu Xét đồ thị có hớng N đỉnh với tính chất sau:

 Giữa đỉnh u v khác tồn cung có hớng nối chúng,

 Khơng tồn cung nối trực tiếp đỉnh với nó, tức không tồn đỉnh kiểu u  u

Các đỉnh đồ thị đợc đánh số từ đến N P hoán vị số từ tới N Hoán vị P gọi đẳng cấu với đỉnh u v, hớng cung (u,v) trùng với hớng cung (P(u), P(v)) đồ thị

Với đồ thị hốn vị P cho trớc, ta có T đồ thị đẳng cấu P

Ví dụ: với N = P(1) = 2, P(2) = 4, P(3) = 3, P(4) = 1, tồn đồ thị đẳng cấu ( T = 4):

Yêu cầu: Với đồ thị hoán vị P cho trớc, xác định T mod 100. Dữ liệu: vào t file bn AUT.INP:

Dòng chøa sè nguyªn N, ( < N £ 10 000),

Các dòng sau chứa số nguyên P(1), P(2), ,P(N), ghi nhiều dòng, số dòng cách dấu cách

Kết quả: đa file văn AUT.OUT phần d phép chia T cho 4. VÝ dô:

AUT.INP AUT.OUT

4

(45)

Cây nhị phân

Xột cõy nhị phân Cây rỗng có số đỉnh Mỗi đỉnh có khơng q Đỉnh không thuộc đợc gọi gốc Mỗi đỉnh chứa chữ tiếng Anh khác Cây đợc gọi Cây nhị phân tìm kiếm ( BST), thoả mãn điều kiện sau: với cho nút trái chứa chữ trớc chữ nút gốc các nút phải chứa chữ sau chữ nút gốc Tập chữ rỗng (nếu rỗng) K chữ đầu tiên, có K nút Mỗi BST tơng ứng với xây K ký tự Xâu đợc xây dựng theo thứ tự giữa: ký tự nút gốc, sau ký tự biểu diễn trái cuối ký tự biểu diễn phải Các xâu đợc xếp theo thứ tự từ điển đợc đánh số theo thứ tự từ điển xâu Mã (N, K) ký hiệu xâu tơng ứng với thứ N BST có K nút

VÝ dơ, víi K = 4, ta có 14 cây, tơng ứng với xâu:

abcd, abdc, acbd, adbc, adcb, bacd, badc, cabd, cbad, dabc, dacb, dbac, dcab, dcba MÃ (7, 4) badc, tơng øng víi c©y:

u cầu: từ N K cho trớc, xác định có BST mã (N,K), 0<K Ê26 Dữ liệu: vào từ file văn BST.INP, gồm nhiều dòng, dòng cặp N, K, kết thúc dòng chứa số Các số dòng cách dấu cách

Kết quả: đa file văn BST.OUT, dòng tơng ứng với cặp N, K khác liệu vào, chứa số lợng (số nguyên ) mà (N,K)

Ví dụ:

BST.INP BST.OUT

2

7 acb14 badc

(46)

Tháp gạch

Trong b chơi có N viên gạch nhựa, viên có dạng hình hộp chữ nhật, chiều cao đơn vị, chiều dài gấp đôi chiều cao, chiều rộng - không quan trọng Để rèn luyện tính cẩn thận, khéo tay khả t lơ gíc, giáo tổ chức thi xây tờng tháp, đáy viên gạch đặt kề thành hình chữ nhật độ dài 4, độ rộng độ rộng viên gạch, tầng có số lợng gạch tầng dới viên Tháp phải có độ cao H ( H chẵn)và tầng phải có viên Hình dới số tháp xây dựng ứng với H =

Yªu cÇu:

 Mỗi tháp tơng ứng với dãy số H nguyên T = ( T1, T2, ,TH), Ti số viên gạch tầng thứ i (tính từ dới lên) Ví dụ, hình ta có T = (2, 3, 2, 3, 2, 1) Hai tháp gọi khác nhau, tơng ứng với dãy số khác Với H cho trớc, xác định xem tồn tháp khác nhau;

 Các dãy số T đợc xếp theo thứ tự từ điển, cho biết thứ tự từ điển dãy số T, xác định cấu hình tháp, tức xác định dóy s T

Dữ liệu: vào từ file TOWER.INP:

Dòng đầu chứa số nguyên dơng H ( < H Ê 110 ), Các dòng sau: dòng chứa số thứ tự từ điển T, File liệu vào kết thúc dòng chứa số

Kết quả: đa file TOWER.OUT:

 Dòng đầu: tổng số tháp khác xây dựng đợc,

 Các dịng sau: dòng chứa H số nguyên T1, T2, ,TH ứng với số thứ tự từ điển cho file liệu vào, số dịng cách dấu cách

VÝ dơ:

TOWER.INP TOWER.OUT

6

4 3

0

Bài 4.Xâu Fibinacci Chơng trình đặt tên BL4.PAS

Xét dãy xâu F1, F2, F3, , FN, , : F1 = ‘A’,

F2 = ‘B’,

FK+1 = FK + FK-1, K = 2, 3, 4,

Cho xâu S độ dài không 25, bao gồm ký tự ‘A’ ‘B’ Hãy xác định số lần xuất xâu S xâu FN , N Ê 35 Chú ý: hai lần xuất S FN không thiết phải xâu rời hoàn toàn

Dữ liệu: vào từ file văn BL4.INP, bao gồm nhiều dịng, dịng có dạng:N S Giữa N S có dấu cỏch

Dữ liệu vào chuẩn, không cần phải kiểm tra

Kết quả: đa file văn BL4.OUT, dòng liệu vào ứng với dòng kết

(47)

BL4.INP BL4.OUT

3 A

3 AB

8 BABBAB

Bài Vợt sông Chơng trình đặt tên BL5.PAS

Dân thành phố Byteland say mê mơn thể thao địi hỏi phải có t vật lý chuyên nghiệp Một mơn thể thao vợt Hex River - sơng rộng Byteland Có N cột, đánh số từ đến N ( từ trái sang phải), đặt sông Ngời vợt sông phải nhảy từ bờ trái tới cột tới đợc, từ chuyển dần tới cột khác sang đợc bờ phải Bờ trái nằm bên trái cột 1, bờ phải nằm bên phải cột N

ở thời điểm 0, vận động viên đứng bờ trái Hex River tìm cách sang bờ phải cách nhanh Tại thời điểm, cột trạng thái chìm trạng thái Vận động viên đứng bờ trái cột, trạng thái Tại thời điểm ban đầu, cột trạng thái chìm, sau cột thứ i chuyển sang trạng thái Ai đơn vị thời gian, chuyển sang trạng thái chìm Bi đơn vị thời gian, lại chuyển sang trạng thái Ai đơn vị thời gian, ( i = 1, 2, , N) Ví dụ, cột có A1 = B1 = trạng thái chìm thời điểm 0, trạng thái thời điểm 2, trạng thái chìm thời điểm 3, 4, 5., v.v thời điểm t+1, vận động viên chọn cho cột bờ sơng phạm vi cột tính từ vị trí mà ngơì đứng thời điểm t, dừng lại Ví dụ, từ cột bạn tới cột 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 bờ trái

u cầu lập trình tính thời gian tối thiểu cần để vợt sông báo NO, nu khụng th vt c

Dữ liệu: vào từ file văn BL5.INP:

- Dòng đầu: số nguyªn N ( £ N £ 1000),

- Dßng thø i N dßng tiÕp theo chøa số nguyên Ai Bi, cách dấu c¸ch ( £Ai , Bi £ 5)

Kết quả: đa file văn BL5.OUT số nguyên thời gian tối thiểu cần để vợt sông hoạc thông báo NO, vợt đợc

VÝ dô:

BL5.INP BL5.OUT

10

Ngày đăng: 13/04/2021, 23:03

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w