Bai tap Pascal co ban

18 2.1K 12
Bai tap Pascal co ban

Đ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

Bài tập bản Tập I Các bài tập bản Bài 1. Viết chơng trình nhập số nguyên dơng N<=1000 và N số nguyên A[1], . . ., A[N]. Hãy thông báo ra màn hình các số sau: - Giá trị lớn nhất của dãy và các chỉ số của các số hạng đạt giá trị lớn nhất. - Giá trị nhỏ nhất của dãy và các chỉ số của các số hạng đạt giá trị nhỏ nhất. - Giá trị lớn thứ nhì của dãy và các chỉ số của các số hạng đạt giá trị lớn nhì. - Giá trị nhỏ thứ nhì của dãy và các chỉ số của các số hạng đạt giá trị nhỏ nhì. - Dãy con gồm nhiều nhất các số hạng liên tiếp của dãy lập thành một cấp số cộng - Dãy con gồm nhiều nhất các số hạng liên tiếp của dãy lập thành một dãy đơn điệu - Dãy con gồm nhiều nhất các số hạng liên tiếp trái dấu nhau của dãy - Dãy con gồm nhiều nhất các số hạng liên tiếp cùng dấu của dãy Bài 2. Viết chơng trình nhập từ bàn phím hai số nguyên dơng M và N 10000 và in ra màn hình ớc chung lớn nhất của hai số đó. Bài 3. Viết chơng trình nhập từ bàn phím số nguyên dơng N 30000 và thông báo ra màn hình N là số nguyên tố hay không. Bài 4. Viết chơng trình nhập từ bàn phím số nguyên dơng N 10000 và thông báo ra màn hình các số K<=N bằng tổng các ớc của nó và nhỏ hơn nó? (Số K thoả mãn điều kiện trên đợc gọi là số hoàn thiện, ví dụ 6=1+2+3 là số hoàn thiện) Bài 5. Nhập từ bàn phím số nguyên dơng N<=10000 và N số thực A1, . ., AN. Hãy sắp xếp dãy đó theo thứ tự không giảm. Thông báo ra màn hình dãy đợc sắp xếp lại đó và ghi rõ từng số hạng là số hạng nào của dãy cũ. Bài 6. N gói kẹo, N<=200, các gói kẹo đợc đánh số từ 1 đến N, gói kẹo thứ i A[i] cái kẹo, các số a[1], . ., a[N] đều nguyên dơng và không quá 200. Hãy thông báo ra màn hình một cách chia các gói kẹo làm hai nhóm sao cho tổng số kẹo trong các nhóm sai khác nhau ít nhất. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi số N và trong các dòng tiếp theo, mỗi dòng ghi 10 số lần lợt từ A[1] đến A[N]. Kết quả ghi ra file OUT.BL nh sau: dòng thứ nhất ghi số kẹo chênh lệch giữa hai nhóm, tiếp theo là một nhóm dòng ghi số hiệu các gói kẹo thuộc nhóm thứ nhất, mỗi dòng ghi 20 số hiệu, cuối cùng là một nhóm dòng ghi số hiệu các gói kẹo thuộc nhóm thứ hai, mỗi dòng ghi 20 số hiệu. Bài 7. Viết chơng trình nhập từ bàn phím bốn số nguyên dơng A, B, C, D, 1<=A<=31, 1<=B<=12, -2000<=C<=2000, 1<=D<=7. ý nghĩa của bốn số này là ngày A tháng B năm C là ngày thứ D, trong đó 1 là chủ nhật, 2 là thứ hai, . ., 7 là ngày thứ bảy. Nhập tiếp ba số nguyên dơng A1, B1, C1 thoả mãn các điều kiện tơng ứng nh đối với A, B, C. Hãy thông báo ra màn hình ngày A1 tháng B1 năm C1 là ngày thứ mấy? Biết rằng nếu năm chia hết cho 4, tháng 2 29 ngày, còn với các năm khác, tháng 2 chỉ 28 ngày. Bài 8. Cho một hình chữ nhật các cạnh là các số nguyên dơng M, N, M và N không quá 100. Hình chữ nhật đợc chia thành các ô vuông cạnh đơn vị bằng các đờng song song với các cạnh, các ô này đợc đánh số nh sau: các dòng ô đánh số từ 1 đến M từ dới lên trên, các cột ô đánh số từ 1 đến N từ trái sang phải, khi đó mỗi ô đợc đặc trng bởi - 1 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I chỉ số dòng và chỉ số cột của nó. Hãy ghi ra màn hình các ô vuông điểm chung với đ- ờng chéo của hình chữ nhật đi từ góc trái trên của ô [1,1] đến góc phải dới của ô [M,N]. Bài 9. Viết chơng trình nhập số nguyên dơng N<=1000 và dãy N số nguyên A[1], . . ., A[N]. Hãy xét xem dãy số đó bao nhiêu giá trị khác nhau và mỗi giá trị đó là giá trị của các số hạng nào của dãy. Bài 10. Viết chơng trình nhập từ bàn phím hai số nguyên dơng M và N, M,N<=10000. Hãy viết ra màn hình biểu diễn dới dạng số thập phân (nói chung là vô hạn tuần hoàn) của phân số M/N tức là dạng M/N = b 1 . .b k ,c 1 . . . c m (d 1 . . d r ) Ví dụ nếu M=2, N=3, ta phải viết ra màn hình 0,(6). Bài 11. Hãy tìm một cách biểu diễn các số lớn hàng trăm chữ số và thực hiện các phép toán cộng và trừ. Bài 12. Viết chơng trình nhập từ bàn phím hai số nguyên dơng M, N. Hãy tìm cách thay các dấu ? trong biểu thức sau bởi các phép toán +, -, * sao cho giá trị của biểu thức nhận đợc bằng N: ((((M?M)?M)?M)?M) Nếu không thể đợc, hãy thông báo là không thể đợc. Bài 13. Viết chơng trình nhập một số thực dơng R và một số nguyên dơng MAX. Hãy tìm trong số các phân số dạng P/Q với Q<=MAX phân số gần số R nhất. Bài 14. Viết chơng trình nhập số nguyên dơng N<=30000 và thông báo ra màn hình số chữ số không tận cùng của N!. Bài 15. Viết chơng trình nhập từ bàn phím hai xâu ký tự S1 và S2. 1. Thông báo ra màn hình độ dài của S1 và S2. 2. Hãy xét xem S1 xuất hiện bao nhiêu lần trong S2 và xuất hiện tại những vị trí nào? 3. Hãy xét xem liệu S2 là ghép liên tiếp của một số lần xâu S1 không? Bài 16. Viết chơng trình nhập từ bàn phím một ký tự và một xâu ký tự. Hãy thông báo ra màn hình ký tự đó xuất hiện bao nhiêu lần trong xâu ký tự và tại những vị trí nào? Bài 17. Viết chơng trình nhập 5 số nguyên A 0 , A 1 , A 2 , A 3 , A 4 . Hãy thông báo ra màn hình tìm mọi nghiệm nguyên của phơng trình A 0 +A 1 X + A 1 X 2 + A 3 X 3 + A 4 X 4 = 0 Bài 18. Viết chơng trình nhập một xâu ký tự S chỉ gồm các chữ cái thờng. Hãy lập xâu S1 nhận đợc từ S bằng cách sắp xếp lại các ký tự theo vần a, b, c, . . . Ví dụ nếu S = 'xbaqp' thì S1 = 'abpqx'. Bài 19. Viết chơng trình nhập 8 số thực X1, Y1, X2, Y2, X3, Y3, X4, Y4, tơng ứng là toạ độ của bốn điểm A, B, C, D trong mặt phẳng toạ độ. Thông báo ra màn hình các kết quả sau: 1. Ba điểm A, B, C lập thành một tam giác không? - 2 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I 2. Nếu ABC là một tam giác, hãy xét xem điểm D nằm bên trong tam giác này không? Bài 20. Viết chơng trình nhập số nguyên dơng N<=1000 và dãy A gồm N số nguyên dơng khác nhau từng đôi A[1], . ., A[N]. Hãy tìm một dãy B gồm nhiều số hạng nhất (không nhất thiết là liên tiếp) của A sao cho với bất kỳ ba số hạng khác nhau X, Y, Z của B, ta luôn tổng X + Y + Z không lớn hơn tổng các số hạng còn lại của B. Bài 21. Giả sử trong một phiên làm việc từ thời điểm 0 đến thời điểm T = 8640000, một trung tâm tính toán phải thực hiện N chơng trình, chơng trình i thực hiện từ thời điểm A[i] đến thời điểm B[i], 0<=A[i]<=B[i]<T. 1. Cho trớc một khoảng thời gian [P1,Q1]. Hãy xét xem liệu tại mọi thời điểm của đoạn đó luôn chơng trình chạy hay không? 2. Cho trớc một khoảng thời gian [R1,S1]. Hãy xét xem liệu tại mọi thời điểm của đoạn đó luôn không chơng trình chạy hay không? 3. Hãy tìm khoảng thời gian [P,Q] dài nhất sao cho tại mọi thời điểm của nó luôn chơng trình chạy. 4. Hãy tìm khoảng thời gian [R,S] dài nhất sao cho tại mọi thời điểm của nó đều không chơng trình chạy. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi số nguyên dơng N <=200. Với 1<=i<=N, dòng thứ i+1 ghi hai số nguyên không âm A[i] và B[i]. Dòng thứ N+2 ghi hai số nguyên không âm P1, Q1, P1<=Q1. Dòng thứ N+3 ghi hai số nguyên không âm R1, S1, R1<=S1. Kết quả ghi ra file OUT.BL: dòng thứ nhất ghi CO/KHONG tuỳ theo kết quả cụ thể; dòng thứ hai ghi CO/KHONG tuỳ theo kết quả cụ thể; dòng thứ ba ghi hai số P,Q; dòng thứ t ghi hai số R, S. Bài 22. Viết chơng trình làm các việc sau: 1. Nhập một số nguyên dơng N<=1000 và dãy A gồm N số tự nhiên A[1], . ., A[N]. 2. Tìm số tự nhiên nhỏ nhất không là tổng của một số số hạng của dãy A. Tổng này thể chỉ gồm một số hạng và nếu nhiều hơn, các số hạng không nhất thiết liên tiếp nhau nhng mỗi số hạng của dãy không xuất hiện quá một lần. Bài 23. Cho một sân hình chữ nhật kích thớc MxN đợc chia thành MxN ô vuông bằng nhau bởi các đờng song song với các cạnh. Trên mỗi ô vuông thể chôn hoặc không chôn một quả mìn. Tình trạng của bãi mìn thể đợc mô tả bởi một trong hai cách sau: Cách thứ nhất: Dùng một mảng MIN1[1 M,1 N] trong đó phần tử MIN1[i,j] = 1 hay 0 tuỳ theo ô [i,j] mìn hay không. Cách thứ hai: Mỗi ô của sân nhiều nhất 8 ô khác nó kề cạnh với nó nh trong hình vẽ sau 1 2 4 1 0 1 16 184 96 128 ô i,j 8 0 1 1 58 109 194 64 32 16 1 1 0 12 134 131 Hình 1 Hình 2 (bên trái: MIN1, bên phải: MIN2) - 3 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I Ta ứng các ô này với các số 1, 2, 4, 8, 16, 32, 64, 128 nh hình 1. Khi đó ta lập một mảng MIN2[1 M,1 N] nh sau: MIN2[i,j] bằng tổng các số hạng dạng X.Y trong đó X là số ứng với một ô kề cạnh với nó, Y bằng 1 hay 0 tuỳ theo ô đó hay không mìn, ô [i,j] bao nhiêu ô kề cạnh thì tổng bấy nhiêu số hạng. Trong hình 2 cho ví dụ về cách lập mảng MIN2 ứng với tình trạng mìn cho bởi mảng MIN1. Viết chơng trình làm các việc sau: 1. Đọc từ file MIN1.TXT mảng MIN1 cho biết tình trạng mìn theo cách thứ nhất, trong đó dòng thứ nhất ghi hai số nguyên dơng M, N <=100, trong M dòng sau, dòng thứ i ghi N số lần lợt là MIN1[i,1], . ., MIN1[i,N]. Ghi ra file MIN1-2.TXT mảng MIN2 thể hiện tình trạng mìn theo cách thứ hai, mỗi dòng của mảng MIN2 ghi thành một dòng của file. 2. Đọc từ file MIN2.TXT mảng MIN2 cho biết tình trạng mìn theo cách thứ nhất, trong đó dòng thứ nhất ghi hai số nguyên dơng M, N <=100, trong M dòng sau, dòng thứ i ghi N số lần lợt là MIN2[i,1], . ., MIN2[i,N]. Ghi ra file MIN2-1.TXT mảng MIN1 thể hiện tình trạng mìn theo cách thứ hai, mỗi dòng của mảng MIN1 ghi thành một dòng của file. Bài 24.Viết chơng trình làm các việc sau: 1. Nhập từ bàn phím hai xâu ký tự S1 và S2. 2. Ta thể dùng một trong ba loại phép biến đổi sau: BD1: xoá một ký tự nào đó trong xâu, BD2: thêm một ký tự nào đó vào một vị trí nào đó của xâu, BD3: thay một ký tự nào đó trong xâu bằng một ký tự khác. Hãy thông báo ra file OUT.TXT liệu thể dùng một số phép biến đổi thuộc ba loại trên để biến đổi S1 thành S2 không, quy cách thông báo nh sau: ví dụ S1 = ptsddf, S2 = tsgldds, thì ta phải thông báo nh sau: Biến đổi đợc ptslddf - xoá p/1 => tslddf tslddf - thêm g/3 => tsgdldf tsgdldf - thay f/7/s => tsgldds 3. Trong trờng hợp biến đổi đợc, hãy tìm một cách biến đổi dùng ít phép biến đổi nhất và thông báo tiếp vào file OUT.TXT theo quy cách nh trên. Bài 25. Cho một bảng vuông cạnh dài N đơn vị, N nguyên dơng, 3<=N<=25. Bảng đợc chia thành NxN ô vuông bằng nhau bằng các đờng song song với các cạnh.Trên một số ô không nằm trên cạnh của bảng đặt vật cản nhng bảng mái che nên không biết đợc vật cản nằm ở những ô nào. Ta thể dùng một quả bóng lăn từ ngoài vào bảng theo các dòng/cột của bảng. Khi đó diễn biến chuyển động của quả bóng nh sau: TH1. Nếu quả bóng gặp ô vật cản, nó quay lại ngợc chiều. TH2. Nếu quả bóng đi tiếp súc với một ô vật cản, nó đổi hớng 90 o theo hớng vuông góc với cạnh tiếp súc ngay tại ô kề đỉnh với ô chứa vật cản. TH1 sẽ xẩy ra khi đồng thời cả TH1 và TH2. TH3. Nếu quả bóng tiếp súc với hai ô vật cản, nó sẽ quay lại ngợc chiều Nhập từ file INP.BL1 số nguyên dơng N, 3<=N<=100 ghi ở dòng thứ nhất, trong N dòng sau mỗi dòng ghi N số 0/1, dòng thứ i+1 là tình trạng các ô của dòng i của bảng trong đó 1/0 tơng ứng là có/không vật cản. Dòng thứ N+2 ghi một xâu ký tự một trong các dạng sau thể hiện cách lăn quả bóng vào bảng. - D-U-1 (có nghĩa là bóng lăn vào dòng U theo hớng từ ô [U,1]) - D-U-N (có nghĩa là bóng lăn vào dòng U theo hớng từ ô [U,N]) - C-U-1 (có nghĩa là bóng lăn vào cột U theo hớng từ ô [1,U]) - C-U-N (có nghĩa là bóng lăn vào cột U theo hớng từ ô [N,U]) - 4 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I In ra file OUT.BL1 dãy các ô liên tiếp của bảng trên hành trình của quả bóng, mỗi ô ghi trên một dòng gồm hai số là số dòng và số cột của ô đó. Ví dụ. Trong hình vẽ sau trong đó ô ghi chữ X là ô vật cản. 1 2 3 4 5 6 1 2 X X 3 X 4 5 X X 6 Nếu xâu ký tự là C-4-6 thì hành trình của quả bóng sẽ là: 6 4 6 3 Nếu xâu ký tự là D-3-6 thì hành trình của quả bóng sẽ là 3 6 3 5 4 5 3 5 4 6 Bài 26. Cho một dãy N viên bi gồm 3 mầu xanh, trắng, đỏ xếp lẫn lộn. Bằng cách đổi chỗ từng cặp viên bi cho nhau, hãy xếp lại dãy bi trên theo trình tự xanh trớc, trắng giữa, đỏ sau. Yêu cầu cần dùng một số ít nhất phép đổi chỗ. Dữ liệu vào đợc cho bởi file INP1.TXT. Dòng thứ nhất ghi số nguyên dơng N<=1000. Trong N dòng tiếp theo, mỗi dòng ghi ở vị trí đầu tiên một ký tự thuộc ba loại: X, T, D thể hiện dãy bi ban đầu. Dữ liệu ra ghi vào file OUT1.TXT trong đó dòng thứ nhất ghi số lợng phép đổi chỗ cần dùng. Trong những dòng tiếp theo, mỗi dòng ghi một phép đổi chỗ dới dạng hai số p q nghĩa là đổi chỗ các viên bi ở hai vị trí p và q cho nhau. Trình tự viết các dòng là trình tự các phép đổi chỗ đợc tiến hành. Thời gian chạy chơng trình: 20 giây. Ví dụ INP1.TXT OUT1.TXT 9 4 T 1 3 T 4 7 - 5 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I X 9 2 D 5 9 D D T D X Bài 27. Tổng giám đốc một công ty muốn tổ chức một buổi liên hoan cho các đồng nghiệp trong công ty. Mỗi cán bộ của công ty ngoại trừ tổng giám đốc đều đúng một cấp trên trực tiếp của mình. Cán bộ P đợc gọi là cấp trên của cán bộ Q nếu một dãy cán bộ P1, P2, . ., Pk, k>=2, sao cho P=P1, Pk=Q và với 1<=i<=k-1, Pi là cấp trên trực tiếp của P i+1 . Để cho mọi cán bộ đợc thoải mái, tổng giám đốc không muốn một cán bộ bất kỳ nào ngồi cùng một bàn với cấp trên của mình. Hãy tính xem cần tối thiểu bao nhiêu bàn dùng cho buổi liên hoan theo yêu cầu của TGĐ. Dữ liệu vào đợc cho bởi file INP.TXT trong đó dòng thứ nhất ghi số nguyên dơng N <=200 là số lợng toàn thể cán bộ của công ty, các cán bộ của công ty tên từ 1 đến N, TGĐ tên 1 và không cấp trên. Dòng thứ hai ghi số nguyên dơng K, 2 <= k <= 10, là số ngời tối đa thể ngồi trong một bàn (chú ý rằng khi xếp, không nhất thiết mọi bàn phải đủ K ngời). Dòng thứ ba ghi N số trong đó số thứ nhất là số 0, số thứ i là tên cấp trên trực tiếp của cán bộ i. Dữ liệu đúng nh mô tả. Ghi ra file OUT.TXT số lợng M bàn cần dùng. Trong M dòng tiếp theo, dòng thứ i ghi tên cán bộ ngồi bàn i. Ví dụ INP.TXT OUT.TXT 13 5 4 0 1 9 9 9 2 2 1 1 8 8 10 Thời gian chạy chơng trình: Không quá 30 giây. Bài 28. N quả cầu với số hiệu là 1, 2, . . ., N, N<=200. Biết trọng lợng của quả cầu 1 là M[1], của quả cầu N là M[N]. hằng số D sao cho với mọi i, 1<i<N, ta M[i] = d + (M[i-1]+M[i+1])/2 Nhập từ bàn phím năm số: N, J - nguyên dơng, 1<=J<=N, M[1], M[N], D - ba số thực. Thông báo ra màn hình khối lợng M[J] của quả cầu J. Bài 29. N lá Bài với các số hiệu 1, 2, . . ., N, N<=50, trên lá Bài i ghi một số nguyên dơng F[i], 1<=F[i]<=N. Hãy tìm một số nhiều nhất các lá Bài sao cho tập các số hiệu của chúng trùng với tập các số ghi trên các lá Bài đó. Dữ liệu vào cho bởi file INP.BL2 trong đó dòng thứ nhất ghi số N nguyên dơng. Trong các dòng tiếp theo ghi mỗi dòng 10 số (cho tới khi hết N số) lần lợt là các số ghi trong các lá Bài từ lá Bài 1 đến lá Bài N. Dữ liệu ra ghi ra file OUT.BL2 trong đó dòng thứ nhất ghi số lợng lá bài. Trong các dòng tiếp theo, mỗi dòng ghi 10 số hiệu của các lá Bài đợc chọn, các số hiệu ghi theo thứ tự tăng dần cho tới hết. Ví dụ INP.BL2 14 6 5 1 3 4 2 8 10 7 9 3 2 1 9 OUT.BL2 - 6 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I 10 1 2 3 4 5 6 7 8 9 10 Bài 30. Bắt đầu từ thời điểm 0, một ngời làm N việc với số hiệu từ 1 đến N, N<=200. Với 1<=i<=N, việc i cần làm trong T[i] đơn vị thời gian và mỗi đơn vị thời gian từ thời điểm 0 đến lúc bắt đầu làm nó, ngời đó bị phạt một lợng tiền C[i]. Khi đã làm một việc nào thì phải làm xong mới chuyển sang làm việc khác. Hãy thu xếp trình tự các việc làm sao cho tổng số tiền bị phạt là ít nhất. Dữ liệu vào đợc cho bới file INP.BL trong đó dòng thứ nhất ghi số nguyên dơng N. Với 1<=i<=N, dòng thứ i+1 ghi hai số thực T[i] và C[i]. Dữ liệu ra ghi trong file OUT.BL. Dòng thứ nhất ghi tổng số tiền bị phạt. Từ dòng thứ hai ghi mỗi dòng 1 cặp số: số thứ nhất là số hiệu việc, số thứ hai là thời điểm bắt đầu việc. Trình tự từ trên xuống dới là trình tự lần lợt làm các việc. Bài 31. Cho xâu S chỉ gồm các dấu mở và đóng ngoặc tròn (, ). Hãy xét xem liệu thể viết thêm một số toán hạng và dấu phép toán giữa các dấu đó để nhận đợc một biểu thức số học đúng không. Dữ liệu vào đợc cho bởi file INP.BL trong đó mỗi dòng ghi một xâu ký tự. Với mỗi dòng đọc đợc của file INP.BL, ba khả năng: - Nếu xâu tơng ứng chứa ký tự khác với ( và ), ghi vào file OUT.BL dòng chữ KHONG HOP LE - Nếu xâu chỉ gồm các ký tự ( và ) và thể viết thêm một số toán hạng và dấu phép toán giữa các dấu đó để nhận đợc một biểu thức số học đúng thì ghi vào file OUT.BL dòng chữ DUNG - Nếu xâu chỉ gồm các ký tự ( và ) nhng không thể viết thêm một số toán hạng và dấu phép toán giữa các dấu đó để nhận đợc một biểu thức số học đúng thì ghi vào file OUT.BL dòng chữ KHONG DUNG Ví dụ INP.BL OUT.BL (((abc)) KHONG HOP LE ((()()))() DUNG (()(()())))) KHONG DUNG Bài 32. Cho một đồ thị vô hớng N đỉnh đánh số từ 1 đến N, N<=100, ma trận kề A[1 N,1 N] và hai đỉnh U, V bất kỳ. Hãy tìm đờng đi từ U đến V (nếu có) qua ít cạnh nhất. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi 3 số nguyên dơng N, U, V, trong N dòng tiếp theo, dòng thứ i ghi N số A[i,1], . ., A[i,N]. Kết quả ghi ra file OUT.BL nh sau: - Nếu không đờng đi, ghi dòng chữ KHONG CO DUONG DI, - Nếu đờng đi, ghi hai dòng: dòng thứ nhất ghi số cạnh, dòng thứ hai ghi các đỉnh lần lợt trên đờng đi từ U đến V. Bài 33. Cho một đồ thị hớng N đỉnh, N<=100, ma trận kề A[1 N,1 N] và hai đỉnh U, V bất kỳ. Hãy tìm đờng đi từ U đến V (nếu có) qua nhiều cung nhất mà mỗi cung không đi hơn một lần. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi 3 số nguyên dơng N, U, V, trong N dòng tiếp theo, dòng thứ i ghi N số A[i,1], . ., A[i,N]. Kết quả ghi ra file OUT.BL nh sau: - 7 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I - Nếu không đờng đi, ghi dòng chữ KHONG CO DUONG DI, - Nếu đờng đi, ghi hai dòng: dòng thứ nhất ghi số cung, dòng thứ hai ghi các đỉnh lần lợt trên đờng đi từ U đến V. Bài 34. Cho số nguyên dơng N<=50 và 2N số thực X1, Y1, X2, Y2, . . ., XN, YN mà với 1<=i<=N, (Xi,Yi) là toạ độ của điểm Mi. Tìm điểm M(X,0) trên trục hoành sao cho khoảng cách lớn nhất từ M đến các điểm Mi là nhỏ nhất thể đợc. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi số N, trong N dòng tiếp theo, dòng thứ i ghi hai số thực Xi và Yi. Rhông báo ra màn hình khoảng cách cần tìm. Bài 35. Cho một thùng dung tích thể xem là vô hạn và N bình dung tích V1, V2, . . ., VN lít. Liệu thể dùng N bình này để đổ vào thùng đúng V lít nớc không? Khi dùng mỗi bình để đổ nớc vào thùng, bình đó phải chứa đầy nớc. Dữ liệu vào đợc cho bởi file INP.BL, dòng thứ nhất ghi số nguyên dơng N<=20 và số nguyên dơng V. Trong N dòng tiếp theo, dòng thứ i ghi số nguyên dơng Vi. Kết quả ghi ra file OUT.BL nh sau: - Nếu không đợc, ghi dòng chữ KHONG DUOC - Nếu thể đợc, ghi dòng chữ CO THE, tiếp theo là N dòng, dòng thứ i ghi số lợng bình nớc dung tích Vi cần đổ vào thùng. Bài 36. Cho N xâu ký tự A1, A2, . ., AN, N<=100, độ dài mỗi xâu Ai không quá 10, và một xâu ký tự S. Hãy tìm mọi cách biểu diễn S dới dạng ghép của các xâu ký tự Ai, mỗi xâu Si thể xuất hiện trong biểu diễn đó nhiều lần. Dữ liệu vào đợc cho bởi file XAU.TXT trong đó dòng thứ nhất ghi xâu S, dòng thứ hai ghi số N, trong N dòng tiếp theo, dòng thứ i ghi xâu Ai. Kết quả ghi ra file KQ.TXT nh sau: - Nếu không biểu diễn, ghi dòng chữ KHONG CO - Nếu biểu diễn, ghi mỗi biểu diễn trên một dòng theo quy cách nh ví dụ. Ví dụ về hai file dữ liệu vào và ra: XAU.TXT KQ.TXT abcdef A[1]A[2]A[3] 11 A[1]A[2]A[10]A[11] ab A[1]A[8]A[5] cd A[1]A[8]A[9]A[3] ef A[1]A[8]A[9]A[10]A[11] abc A[4]A[5] def A[4]A[9]A[3] a b c d e f A[4]A[9]A[10]A[11] A[6]A[7]A[2]A[3] A[6]A[7]A[2]A[10]A[11] A[6]A[7]A[8]A[5] A[6]A[7]A[8]A[9]A[3] A[6]A[7]A[8]A[9]A[10]A[11] Bài 37. Hãy tìm hai số nguyên dơng P, Q sao cho số A mà khi viết trong số P dạng 0,(ab), (ab) là chu kỳ của A và khi viết trong dạng số Q dạng 0,(ba). Bài 38. N thành phố với các tên từ 1 đến N, N<=100. Mảng C[1 N,1 N] thoả mãn các điều kiện: C[i,j] = C[j,i] = 0 nếu không đờng đi từ i đến j và bằng 1 nếu đ- - 8 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I ờng đi từ i đến j, các đờng đi đều là hai chiều. Hãy xét xem hay không một hành trình sao cho mỗi đờng đi giữa các thành phố đợc đi đúng một lần. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi số nguyên dơng N, trong N dòng tiếp theo, dòng thứ i ghi N số C[i,1], . ., C[i,N]. Kết quả ghi ra file OUT.BL nh sau: - Nếu không thể, hãy thông báo ra màn hình dòng chữ KHONG THE - Nếu thể, hãy viết ra màn hình các thành phố lần lợt đi trên hành trình này. Bài 39. Ngòi bán hàng A chỉ M tờ tiền với mệnh giá lần lợt là A[1], A[2], . . ., A[M] đồng. Ngời mua B chỉ N tờ tiền, N<=30 với mệnh giá lần lợt là B[1], B[2], . . ., B[N]; M, N <=50, các số A[i] và B[j] đều là nguyên dơng. Hãy tìm số nguyên dơng P lớn nhất thể đợc sao cho nếu B mua không quá P đồng, A vẫn thể bán đúng đợc số tiền đó bằng cách chỉ sử dụng các tờ tiền nói trên của cả hai ngời. Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi hai số nguyên dơng M, N, dòng thứ 2 ghi M số nguyên dơng A[1], . ., A[M], dòng thứ 3 ghi N số nguyên d- ơng B[1], . ., B[N]. Thông báo số P ra màn hình. Bài 40. Nhập từ bàn phím số thực dơng R. Hãy tìm cách biểu diễn R thành tổng các số thực dơng R1, . ., Rk, các Ri<=4, sao cho R cũng bằng tích của R1, . ., Rk. Kết quả ghi ra màn hình các số R1, . ., Rk tìm đợc. Bài 41. Nhập từ bàn phím số nguyên dơng N<=30000. Hãy tìm cách biểu diễn N thành tổng các số nguyên dơng A1, . . , Ak sao cho tích các số A1, . ., Ak là lớn nhất thể đợc. Kết quả ghi ra màn hình tích các số Ai. Bài 42. Một thày giáo gặp N học sinh tên 1, 2, . ., N. Học sinh i mặt lúc T[i] và sẽ gặp thày trong khoảng thời gian C[i]. Thày giáo sẽ gặp lần lợt từ học sinh 1 đến học sinh N, nếu học sinh i đến vào giờ T[i] nhng thày cha gặp xong các học sinh 1, 2, . ., i-1 thì học sinh i phải đợi đến lợt mình. Giả sử thày giáo bắt đầu sẵn sàng gặp học sinh từ thời điểm quy ớc là 0. Hãy tính xem tại thời điểm nào thày giáo gặp xong tất cả N học sinh và ghi ra màn hình. Các số N, C[1], . ., C[N], T[1], . ., T[N] đều là nguyên dơng và thể nhập từ file hoặc từ bàn phím. Kết quả thông báo ra màn hình. Bài 43. N ngời tên tơng ứng là 1, 2, . ., N và tình trạng quen biết của N ngời này đợc cho bởi mảng đối xứng A[1 N,1 N] trong đó A[i,j]=A[j,i]=1 nếu i quen j và bằng 0 nếu i không quen j. Hãy xét xem liệu thể chia N ngời đó thành 2 nhóm mà trong mỗi nhóm, hai ngời bất kỳ đều không quen nhau? Dữ liệu vào đợc cho bởi file INP.BL trong đó dòng thứ nhất ghi số nguyên dơng N<=100, trong N dòng tiếp theo, dòng thứ i ghi N số A[i,1], . ., A[i,N]. Kết quả ghi ra file OUT.BL nh sau: - Nếu không thể, hãy thông báo ra màn hình dòng chữ KHONG THE - Nếu thể, hãy viết ra màn hình hai dòng, dòng thứ nhất tên những ngời thuộc nhóm 1, dòng thứ hai tên những ngời thuộc nhóm 2. Bài 44. Trên trục số cho N đoạn thẳng [Ai, Bi], 1<=i<=N, mà Ai và Bi là toạ độ của các điểm đầu mút đoạn i trên trục số. Cho một điểm M với toạ độ X. Hãy xét xem tình huống nào trong hai tình huống sau xảy ra: 1. M không thuộc đoạn nào trong số N đoạn trên, khi đó cần thông báo rõ đoạn lớn nhất chứa M không điểm trong chung (có thể chung đầu mút) với N đoạn nói trên. 2. M thuộc một số đoạn trong số N đoạn trên, khi đó cần thông báo rõ bao nhiêu đoạn và những đoạn nào. - 9 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I Các số N, X và Ai, Bi nhập từ file hoặc bàn phím. Kết quả thông báo ra màn hình. Bài 45. Một số nguyên dơng N rất lớn thể đợc cho bởi số nguyên dơng P, P số nguyên dơng A 1 , . ., A P và P xâu ký tự chỉ gồm các chữ số thập phân S 1 , . ., S P . Khi đó N sẽ nhận đợc bằng cách viết S 1 liên tiếp A 1 lần rồi S 2 liên tiếp A 2 lần, . ., S P A P lần Ví dụ với P=3, A1=3, S1=123, A2=4, S2=0, A3=2, S3=45 thì ta N = 12312312300004545 Giả sử số N đợc cho nh vậy và cho một số nguyên dơng K không vợt quá số chữ số của N, hãy tìm cách gạch đi K chữ số của N để nhận đợc một số giá trị nhỏ nhất. Các số P, K, A1, . ., AP, các xâu S1, . ., SP thể nhập từ file hoặc từ bàn phím. Thông báo số nhận đợc ra màn hình. Bài 46. Nhập từ bàn phím một xâu ký tự S. Thông báo ra màn hình xâu X ngắn nhất sao cho S là ghép của một số lần liên tiếp của X (có thể X=S). Bài 47. Biết dạng nhị phân B1B2 . . BM của một số nguyên dơng N mà M rất lớn do đó ta không thể chuyển nó thành dạng thập phân một cách thông thờng. Hãy tìm phần d của phép chia N cho 15 trong hệ thập phân. Dạng nhị phân của số N nhập từ bàn phím nh một xâu ký tự chỉ gồm các ký tự 0 và 1. Hãy thông báo ra màn hình kết quả. Bài 48. Một nhóm gồm N ngời dánh số từ 1 đến N (N<=100) ngồi quanh một bàn tròn theo thứ tự từ 1 đến N theo chiều kim đồng hồ và chơi một trò chơi nh sau: một ngời nào đó bắt đầu đếm từ số 1, ngời tiếp theo (theo chiều kim đồng hồ) đếm số 2, cứ tiếp tục nh vậy cho tới khi ai đếm đến số S thì ra khỏi bàn. Tiếp tục, ngời ngồi cạnh đó lại bắt đầu đếm từ số 1 cho tới khi ai đếm đến số S thì lại ra khỏi bàn, . . . Nhập từ bàn phím các số nguyên dơng N, S và L. 3.1. Nếu bắt đầu đếm từ ngời số 1 thì ngời nào còn lại cuối cùng? 3.2. Nếu ngời còn lại cuối cùng là ngời thứ L thì bắt đầu đếm từ ngời nào? Các câu trả lời viết ra màn hình. Bài 49. Nhập hai số nguyên dơng M và N. In ra mọi nghiệm nguyên không âm của phơng trình X 1 + X 2 + . . + X N = M Bài 50. Viết chơng trình làm các việc sau: - Nhập một số thập phân bất kỳ không quá 1000000 và không quá 6 số lẻ sau dấu phảy. - Viết ra màn hình dạng viết của số thập phân này. Ví dụ nếu nhập số 13.24, phải thông báo ra màn hình dòng chữ mời ba phẩy hai mơi bốn. Bài 51. Viết chơng trình làm các việc sau: - Nhập từ bàn phím một xâu ký tự S độ dài không quá 40 chỉ gồm các ký tự 0 và 1. - Biến đổi xâu S thành xâu S1 nh sau: đọc từ trái sang phải xâu S, thay những xâu con chỉ gồm các ký tự 1 liên tiếp giữa các ký tự 0 bởi số thập phân nhận nó làm dạng nhị phân và thay những xâu con chỉ gồm các ký tự 0 liên tiếp giữa các ký tự 1 bởi dạng nhị phân của độ dài của nó, giữa các đoạn này đặt ký tự rỗng ngăn cách. Thông báo ra màn hình xâu S1. Ví dụ nếu S = 000111100 thì S1 = 11 15 10. - Giả sử biết S1 đợc nhập từ bàn phím, hãy khôi phục lại xâu S và viết ra màn hình. Bài 52. Viết chơng trình làm các việc sau: - 10 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com [...]... không đờng đi từ ô [x,y] đến ô [z,t] hoặc không ô đặc biệt nào thì ghi thông báo Khong co - 14 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I Ví dụ với file INP.TXT 4 1 31 27 27 26 8 22 12 20 file OUT.TXT sẽ là 3 3 3 4 Với file INP.TXT 4 1 1 29 29 26 8 19 12 20 file OUT3.TXT sẽ là Khong co 1 26 22 13 14 4 1 5 4 3 4 1 26 19 14 14 3 1 5 7 5 4 Bài 73 Cho hai xâu ký tự X và Y Để... ô trong vệt ngang thứ I của mê cung, A[I,J] = 0/1 tuỳ theo ô [I,J] đi qua đợc hay không đi qua đợc Kết quả ghi ra file OUT.B1 nh sau: Dòng thứ nhất ghi chữ CO hay KHONG tuỳ theo ngời đó thể đi ra hay không đi ra ô thuộc biên Nếu câu trả lời là CO, từ dòng thứ hai ghi mỗi dòng hai số là chỉ số dòng và chỉ số cột của các ô lần lợt đi qua bắt đầu từ ô [I,J] đến ô thuộc biên Bài 79 Cho N điểm trên mặt... không thì sắp xếp lại dãy đó để nhận đợc dãy hình sin bậc M Dữ liệu vào đợc cho bởi file văn bản với tên BAI1 .INP cấu trúc nh sau: - dòng đầu gồm hai số nguyên N và M, - dòng sau ghi N số nguyên X1, X2, , XN Các số trên một dòng cách nhau ít nhất một dấu cách Kết quả ghi ra file văn bản với tên BAI1 .OUT theo cấu trúc sau: - dòng đầu ghi số 1 nếu dãy đã cho là dãy hình sin bậc M và ghi số 0 nếu ngợc... với mỗi công dân, mỗi công dân đợc ghi tên gồm các chữ cái la tinh liền nhau chữ đầu tiên viết hoa, các chữ sau viết thờng, tiếp theo là các số chỉ loại ý - 13 Lê Ngọc Thắng hop_thu_cua_bodie_37@yahoo.com Bài tập bản Tập I kiến, giữa tên và loại ý kiến, hai loại ý kiến của một tên cách nhau bằng một ký tự rỗng, hai loại công dân cách nhau bằng một dòng rỗng Hãy viết chơng trình làm các việc sau:... xây dựng nh sau: 0 01 0112 01121220 0112122012202001 Nhập từ bàn phím số nguyên dơng N . số hạng đạt giá trị nhỏ nhì. - Dãy con gồm nhiều nhất các số hạng liên tiếp của dãy lập thành một cấp số cộng - Dãy con gồm nhiều nhất các số hạng liên. của dãy lập thành một dãy đơn điệu - Dãy con gồm nhiều nhất các số hạng liên tiếp trái dấu nhau của dãy - Dãy con gồm nhiều nhất các số hạng liên tiếp

Ngày đăng: 24/06/2013, 01:28

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan