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

Cac de thi HSG Pascal hay va kho

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 (99.7 KB, 3 trang )

<span class='text_page_counter'>(1)</span>ĐỀ 1: Bài 1: Đèn nhấp nháy: Trong dịp đại lễ 1000 năm thăng long hà nội, An quan sát thấy nhiều đèn nhấp nháy được trang trí trên các đường phố. Vốn là một học sinh yêu thích môn tin học và vật lý. An quyết định tự tạo một dây đèn nhấp nháy đặc biệt. Dây đèn của An gồm n bóng nối tiếp nhau, đánh số thứ tự từ 1 đến n và được điều khiển theo nguyên tắc: Bắt đầu từ thời điểm 0 tất cả các bóng đèn đều ở trạng thái tắt, bóng thứ i sẽ lóe sáng và các thời điểm ti, 2 ti, 3 ti (i=1,2,...,n). An chờ đợi và muốn biết thời điểm nào mà cả n bóng đều cùng lóe sáng. Ví dụ t1 = 4 thì tại các thời điểm 4, 8 , 12 , 16, 20 .. bóng đèn 1 lóe sáng, t2=6 thì tại các thời điểm 6, 12, 18, 24, 30... bóng đèn 2 sẽ lóe sáng. Như vậy, thời điểm 12 sẽ là thời điểm sớm nhất mà cả 2 bóng đèn đều cùng lóe sáng. Yêu cầu: Cho t1, t2, ... tn, hãy giúp An tính thời điểm sớm nhất mà tất cả n bóng đều lóe sáng. Dữ liệu: Vào từ file văn bản Bai1.INP có dạng: - Dòng đầu tiên chứa số nguyên dương n (2 <= n <= 30) - Dòng thứ hai chứa n số nguyên dương t1, t2, ... tn (ti <= 10^6). Kết quả: Ghi ra file văn bản Bai1.Out thời điểm sớm nhất mà tất cả n bóng đèn đều lóe sáng. Ví dụ Bai1.INP: 2 46 Bai1.OUT 12 Bài 2:Mật khẩu: Một xâu ký tự được gọi là mật khẩu "an toàn" nếu xâu có độ dài ít nhất = 6 và xâu chứa ít nhất một chữ cái in hoa ('A'..'Z'), một chữ cái thường, một chữ số. Ví dụ: 'a1B2C3', 'tinHoc6' là hai mật khẩu "an toàn", còn 'a1B2C', 'a1b2c3', 'A1B2C3', 'tinhoc' đều không phải là mật khẩu "an toàn". Một lần, Bình nhìn thấy một xâu S, chỉ gồm các loại ký tự: chữ cái in hoa, chữ cái thường và chữ số. Bình muốn tự kiểm tra khả năng đoán nhận mật khẩu bằng cách đếm xem có bao nhiêu cặp chỉ số (i,j) thỏa mãn đkiện: 1 <=i<j<=length(s) và xâu con gồm các ký tự liên tiếp từ i đến j của S là mật khẩu "an toàn". Yêu cầu: Cho xâu S, tính số lượng cặp chỉ số (i,j) thỏa mãn điều kiện nêu trên. Dữ liệu: Vào từ file văn bản Bai2.INP gồm một dòng chứa xâu S có độ dài không quá 100. Kết quả: Ghi ra file văn bản Bai2.OUT một số nguyên là số lượng cặp chỉ số (i,j) tính được. Ví dụ: Bai2.INP abc3456789PQ Bai2.OUT 6 Ví dụ 2: Bai2.INP abc123 Bai2.OUT 0 Bài 3: Bàn cờ: Cho một bàn cờ kích thước m x n ô, các dòng được đánh số từ 1 đến m từ trên xuống dưới, các cột được đánh số từ 1 đến n từ trái qua phải. Ô nằm ở vị trí dòng i và cột j của lưới được gọi là ô (i,j) và khi đó, i được gọi là chỉ số còn j được gọi là chỉ số cột của ô này. Được phép đặt một quân vua vào một ô của bàn cờ (mỗi ô đặt không quá một quân), khi đó nó có thể khống chế 8 ô lân cận xung quanh (8 ô được đánh số từ 1 đến 8, xem hình vẽ dưới đây). 123 8 x 4 (x là quân hậu) 765 Trên bàn cờ đã đặt trước một số quân vua (không có 2 quân nào khống chế nhau), người ta muốn đặt thêm nhiều nhất các quân vua lên bàn cờ mà vẫn đảm bảo không có 2 quân vua nào khống chế nhau. Yêu cầu: Cho biết các ô đã đặt quân vua, hãy đặt thêm nhiều nhất quân vua lên bàn cờ sao cho trên bàn cờ không có 2 quân nào khống chế nhau. Dữ liệu: Vào từ file văn bản Bai3.INP có dạng - Dòng đầu tiên chứa 3 số nguyên m,n,k (0<m , n < 30; 0 <=k<=m mx n). Trong đó m,n là kích thước bàn cờ, k là số quân vua đã được đặt trên bàn cờ. - Dòng thứ i trong k dòng tiếp theo gồm 2 số ai ,bi là chỉ số dòng và chỉ số cột của ô thứ i đã có quân vua. Kết quả: Ghi ra file văn bản Bai3.OUT có dạng: - Dòng đầu tiên ghi số nguyên s là số lượng nhiều nhất quân vua được đặt thêm lên bàn cờ..

<span class='text_page_counter'>(2)</span> - Dòng thứ i trong s dòng tiếp theo gồm 2 số xi, yi là chỉ số dòng và chỉ số cột của quân vua thứ i được đặt thêm lên bàn cờ (nếu có nhiều phương án đưa ra một phương án bất kỳ). Ví dụ: Bai3.INP 230 Bai3.OUT 2 11 23 Ví dụ 2 Bai3.INP 331 22 Bai3.OUT 0. ĐỀ 2: Bài 1: Đi xe bus (6 điểm)---Trên một tuyến đường nối 2 thành phố có xe ô tô buýt công cộng phục vụ việc đi lại của hành khách. Bến xe buýt có ở từng km của tuyến đường. Mỗi lần đi qua bến, xe đều đỗ lại cho khách lên xuống. Từ mỗi bến đều có xe xuất phát, nhưng mỗi xe chỉ chạy không quá N km kể từ bến xuất phát của nó. Hành khách khi đi xe sẽ phải trả tiền cho độ dài đoạn đường mà họ ngồi trên xe. Cước phí cần trả để đi trên đoạn đường i là C[i] (i=1,2,..n). Một hành khách xuất phát từ một bến nào đó, muốn đi L km trên tuyến đường nói trên. Hỏi người đó phải lên xuống như thế nào để tổng số tiền phải trả cho hành trình xe buýt là ít nhất. --- Dữ liệu vào: Vào từ file văn bản BUS.INP. Trong đó: - Dòng 1 ghi hai số nguyên dương N,L (N<=20; L<=200) - Dòng 2 ghi N số nguyên dương C[1],C[2],...,C[n] được ghi cách nhau bởi dấu cách. --- Kết quả: GHi ra file văn bản BUS.OUT. Trong đó: - Dòng 1: Ghi cước phí ít nhất phải trả - Dòng 2: Ghi số lần lên xuống xe - Dòng 3: Ghi K là độ dài của các đoạn đường của K lần ngồi xe. Các số cách nhau ít nhất 1 dấu cách. Ví dụ: --------------BUS.INP------------------BUS.OUT 10 15------------------------------------142 12 21 31 40 49 58 65 79 90 101-----------3 ------------------------------------------1 7 7 Bài 2: Bưu điện (7 điểm) ---Có N ngôi làng, đánh số từ 1 đến N, được nối với nhau bởi các tuyến đường nối trực tiếp giữa hai làng sao cho từ một làng bất kì có thể đi đến một làng bất kì khác bằng con đường này. Hãy chọn ra một làng để đặt trạm bưu điện sao cho quãng đường xa nhất từ làng khác đến nó là nhỏ nhất ---Dữ liệu vào: Vào từ file POST.INP - Dòng 1: Ghi N là số ngôi làng (n<=100) - Tiếp theo là một số dòng, mỗi dòng ghi 3 số nguyên dương u,v,w,thể hiện có một con đường (hai chiều) nối làng u và làng v với độ dài w (lưu ý rằng giữa 2 làng có thể có nhiều hơn một đường đi trực tiếp). Các số trên một dòng được ghi cách nhau ít nhất một dấu cách. ---Kết quả: Ghi ra file văn bản POST.OUT, gồm 2 dòng - Dòng 1: ghi số hiệu ngôi làng sẽ đặt trạm bưu điện - Dòng 2: ghi độ dài đoạn đường xa nhất từ một làng đến bưu điện, trong phương án tối ưu. Ví dụ: ---------POST.INP-------------POST.OUT ----------3--------------------2 ----------1 2 3----------------3 ----------2 3 1 ----------1 3 8.

<span class='text_page_counter'>(3)</span> Bài 3: Đổ nước (7 điểm) Có N chai dung tích L[1], L[2],...,L[N] (lít), trong đó chai thứ nhất đổ đầy nước. Hãy tìm cách lấy ra M lít nước(với 0<=M<=L, L[1]<=100) ---Dữ liệu vào: Từ file WATER.INP, gồm dòng đầu là 2 số nguyên dương N và M (với N<=10). Dòng thứ hai ghi N số nguyên dương L[1],L[2],...,L[N] là dung tích của các chai. ---Kết quả: Đưa ra file WATER.OUT, theo quy cách -----------Nếu không tìm được cách đổ thì ghi -1 -----------Nếu tìm được cách đổ thì trong K dòng đầu tiên (với K là số bước cần thực hiện), mỗi dòng ghi 2 số nguyên p và q, với ý nghĩa là phải đổ nước từ chai p sang chai q. Tiếp theo là K dòng, mỗi dòng ghi N số, trong dòng thứ j (1<=j<=K) , số thứ i là dung tích nước trong trai i tại bước thứ j. Dòng cuối cùng ghi số nguyên K là số bước thực hiện --- Các số trên một dòng của Input/Outpuc File được ghi cách nhau ít nhất một dấu cách. Ví dụ: -------------WATER.INP--------WATER.OUT -------------3 6----------------1 2 -------------12 10 2------------2 3 --------------------------------3 1 --------------------------------2 3 --------------------------------2 10 0 --------------------------------2 8 2 --------------------------------4 8 0 --------------------------------4 6 2 --------------------------------4. ĐỀ 3: Bài 1: Cặp số ''hữu nghị'' (2 điểm)--Hai số nguyên dương được gọi là ''hữu nghị'' nếu số này bằng tổng các ước thực sự của số kia và ngược lại (ước thực sự của một số nguyên dương là ước nhỏ hơn số đó, ví dụ số 6 có các ước thực sự là 1,2,3). Hãy tìm các cặp số ''hữu nghị'' từ 100 đến 1000. Kết quả: Đưa ra màn hình, mỗi cặp số tìm được ghi trên một dòng, số bé viết trước, các số cách nhau tối thiểu một dấu cách. Bài 2: Xoá chữ số (2 điểm)--Tìm tất cả các số có 4 chữ số thoả mãn tính chất: Nếu xoá đi 1 chữ số nào đó thì số đó giảm đi 9 lần.--Kết quả: Đưa ra màn hình, gồm nhiều dòng, mỗi dòng 2 số: số thứ nhất là số có 4 chữ số thoả mãn tính chất trên, số thứ hai là số có 3 chữ số có được từ số thứ nhất sau khi đã xoá đi 1 chữ số để được số bằng 1/9 số thứ nhất, các số cách nhau tối thiểu một dấu cách. Các kết quả ghi không được trùng nhau ------Dòng cuối ghi số các số tìm được Bài 3: Xoáy ốc (2 điểm) Lập chương trình nhập các số tự nhiên liên tiếp 1,2,3,4,...,N*N vào bảng A[N*N] theo chiều xoáy ốc ngược chiều kim đồng hồ. ------Sau đó in ra bảng A[N*N] ra màn hình. Ví dụ N=4 cấn nhập vào và in ra kết quả như sau: ---1--12-11-10 ---2--13-16--9 ---3--14-15--8 ---4---5--6--7 ---Dữ liệu vào: Nhập từ bàn phím số nguyên dương N<=20. ---Kết quả: Đưa ra màn hình bảng A[N*N] gồm các số tự nhiên sắp xếp theo yêu cầu trên. Bài 4: Số Amstrong (2.5 điểm)-----Số tự nhiên N có k chữ số, được gọi là số Amstrong nếu N bằng tổng các luỹ thừa bậc k của các số của nó.-----Ví dụ: 153=1^3+5^3+3^3 -----Hãy tìm tất cả các số Amstrong có k chữ số, với 3<=k<=6 -----Kết quả: Đưa ra màn hình mỗi số tìm được viết trên một dòng. -----Dòng cuối cùng ghi số các số tìm được. Bài 5: Số độc đắc (1.5 điểm) Viết các số tự nhiên từ 1 đến 2009 theo một vòng tròn cùng chiều quay kim đồng hồ. Cũng theo chiều đó, bắt đầu từ số 1, cứ đếm từ 1 đến số thứ 612 thì xoá số đó đi. Lại bắt đầu từ số còn lại đứng ngay sau số vừa bị xoá, lặp lại quá trình đến khi còn 1 số thì dừng lại. -----a) Hỏi số còn lại là số nào? -----b) Muốn số còn lại là số thứ L (0<L<2010) thì ban đầu cần xuất phát từ số nào? Dữ liệu vào: Nhập từ bàn phím số nguyên dương L (0<L<2010) Kết quả: Đưa ra màn hình theo qui cách: dòng thứ nhất là kết quả cho câu hỏi a); dòng thứ hai là kết quả cho câu hỏi b)..

<span class='text_page_counter'>(4)</span>

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×