C¸c cöa sæ nµy cã thÓ rêi nhau, phñ kÝn nhau hoÆc giao nhau mét. phÇn.[r]
Trang 1bài tập tin học
ĐHKHTN - 02/1999
ắắắắắắ { ắắắắắắ
Bài 1 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, nếu khi so sánh theo dòng các phần tử tơng ứng của A và B, ở cặp phần tử khác nhau đầu tiên, phần tử của ma trận A lớn hơn phần tử tơng ứng của B.
Ví dụ: Có A B
4 5 3 4 5 3
2 8 9 2 8 1
1 7 6 6 -1 7
Ta có A > B , vì A[2,3] > B[2,3].
Cho ma trận A kích thớc M*N ( 1 Ê M,N Ê 387) Với các phép biến đổi:
-1 Đổi chổ 2 dòng,
- Đổi chổ 2cột,
có thể tạo ra dãy ma trận sắp xếp theo thứ tự tăng dần.
Hãy tìm phần tử cuối cùng ( A[M,N] ) của ma trận lớn nhất.
Dữ liệu: vào từ file MT.INP:
-2 Dòng đầu : M N,
-3 Các dòng sau: chứa các phần tử của A, sắp xếp theo dòng, các phần tử cách nhau một dấu cách hoặc nhóm dấu xuống dòng.
Các phần tử của A khác nhau từng đôi một, nguyên và thuộc phạm vi Longint.
Kết quả: đa ra file MT.OUT số nguyên A[M,N] tìm đợc.
Ví dụ: MT.INP MT.OUT
4 3 5
2 8 1
Bài 2 Số nhị phân Fibonacci
Xét dãy số Fibonacci F 0 , F 1 , F 2 , F 3 , ,F n , với F 0 = F 1 = 1.
Một số nguyên dơng X có thể biểu diễn một cách đơn trị dới dạng:
X = Sa i F i , trong đó a i = (0, 1), a i *a i+1 = 0.
Dãy (a 1 , a 2 , ,a n ) đợc gọi là dạng biểu diễn Nhị phân Fibonacci của số X.
Cho hai số nguyên X và Y dới dạng Nhị phân Fibonacci ( X Ê Y) Hãy tìm X*Y và 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 2 dòng, mỗi dòng một xây ký tự ( 0, 1), dòng đầu là X ở dạng biểu
diễn Nhị phân Fibonacci, dòng thứ 2 là Y ở dạng biểu diễn Nhị phân Fibonacci Độ dài xâu không quá 200.
Kết quả: đa ra file FIB.OUT:
-1 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).
Trang 2bài tập tin học
ĐHKHTN -1999
ắắắắắắ { ắắắắắắ
Bài 1 Cửa sổ văn bản
Xét văn bản T gồm N ký tự ( N Ê 1000000, N không cho trớc) và văn bản P gồm M ký tự ( 0 < M Ê 100) Cửa sổ độ dài W là một đoạn văn bản gồm K ký tự liên tiếp của T ( M Ê K Ê 1000) Nói cửa sổ W chứa mẫu P, nếu tồn tại một cách xoá một
số ký tự của W để nhận đợc P
Hai cửa sổ của T gọi là khác nhau, nếu chúng bắt đầu từ những vị trí khác nhau trong T Hãy xác định số cửa sổ khác nhau trong văn bản T chứa P
Dữ liệu :
- File WINDOWP.INP:
+ dòng đầu chứa 2 số nguyên W M, + Dòng thứ 2 chứa M ký tự của văn bản P;
- File WINDOWT.TXT chứa văn bản T
Kết quả: Đa ra 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ụ :
4 2
is This is sample textfor the first task on
the contest
8
Bài 2 Cửa sổ màn hình đồ hoạ
Một màn hình đồ hoạ có kích thớc 300*200, với điểm gốc toạ dộ (0,0) ở góc trên trái Hệ thống hoạt động trong chế độ đa nhiệm, hiện đang có N chơng trình hoạt
động, mỗi chơng trình có một cửa sổ riêng của mình Chơng trình thứ i có cửa sổ xác
định bởi nhóm 4 giá trị nguyên không âm ( X1i, Y1i, X2i, Y2i), trong đó ( X1i, Y1i) là toạ độ trên trái và (X2i, Y2i) là toạ độ dới phải của cửa sổ ( 0 Ê X1i < X2i < 300, 0Ê Y1i < Y2i < 200) Các cửa sổ này có thể rời nhau, phủ kín nhau hoặc giao nhau một phần Để kích hoạt một chơng trình mới, ngời ta cần khai báo một cửa sổ mới không
có điểm chung với các cửa sổ đang có Hãy xác định toạ độ các đỉnh trên trái và dới phải của cửa sổ mới sao cho diện tích của cửa sổ này là lớn nhất
Dữ liệu: Vào từ file GW.INP:
- Dòng đầu chứa số nguyên N ( 0 < N Ê 100),
- N dòng sau: mỗi dòng chứa 4 số nguyên X1 Y1 X2 Y2, xác định một cửa sổ
Kết quả : đa ra 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, nếu không thể tìm đợc cửa sổ đáp ứng yêu cầu đề ra
- Trong trờng hợp S > 0, thì dòng thứ 2 chứa 4 số nguyên, xác định cửa sổ tìm
đợc
Ví dụ:
100 40 299 199