1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tài liệu Ôn thi HSG môn Tin học THPT

33 958 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 33
Dung lượng 358,01 KB

Nội dung

CÁC DẠNG BÀI TẬP CƠ BẢNBÀI 1: BẮT TAY (HANDSHAKE.CPP)Có n người bạn đến dự tiệc tại nhà Cu Tí. Biết rằng mỗi người bắt tay với tất cả những người còn lại và 2 người bắt kỳ chỉ bắt tay nhau đúng 1 lần.Yêu cầu: Đếm số lượng cái bắt tay?Dữ liệu vào: Một số nguyên dương n (1≤n≤ 〖10〗6)Kết quả ra: số lượng cái bắt tayVí dụ:StdinputStdoutput1021BÀI 2: TÍNH TỔNG(SUM.CPP)Cho dãy sốT_n=n2(n1)2Yêu cầu: Tính giá trị S=T_1+T_2+T_3+⋯+T_nDữ liệu vào: Một số nguyên dương n (1≤n≤ 〖10〗6)Kết quả ra: Giá trị SVí dụ:StdinputStdoutput24BÀI 3: CẮT BÁNH SINH NHẬT (CUTTING.CPP)Cu Tí được mừng sinh nhật một chiếc bánh gato hình chữ nhật cỡ n×m. Cu Tí muốn cắt chiếc bánh thành các bánh cỡ 1×1. Một nhát dao cắt bánh chỉ được cắt dọc hoặc ngang theo cạnh của hình chữ nhật.Sau khi cắt, các phần bánh là rời nhau.Ví dụ: Với bánh cỡ 3×2 Yêu cầu: Cu Tí phải cắt bao nhiêu lần?Dữ liệu vào: Hai số nguyên dương n,m (1≤n,m≤ 〖10〗9)Kết quả ra: Số nhát dao cắt bánh của Cu TíVí dụ:StdinputStdoutput3 12

BÀI 1: BẮT TAY (HANDSHAKE.CPP) Có người bạn đến dự tiệc nhà Cu Tí Biết người bắt tay với tất người lại người bắt kỳ bắt tay lần Yêu cầu: Đếm số lượng bắt tay? Dữ liệu vào: Một số nguyên dương ) Kết ra: số lượng bắt tay Ví dụ: Stdinput BÀI 2: TÍNH TỔNG Stdoutput (SUM.CPP) Cho dãy số Yêu cầu: Tính giá trị Dữ liệu vào: Một số nguyên dương ) Kết ra: Giá trị Ví dụ: Stdinput Stdoutput BÀI 3: CẮT BÁNH SINH NHẬT (CUTTING.CPP) Cu Tí mừng sinh nhật bánh gato hình chữ nhật cỡ Cu Tí muốn cắt bánh thành bánh cỡ - Một nhát dao cắt bánh cắt dọc ngang theo cạnh hình chữ nhật Sau cắt, phần bánh rời Ví dụ: Với bánh cỡ Yêu cầu: Cu Tí phải cắt lần? Dữ liệu vào: Hai số nguyên dương ) Kết ra: Số nhát dao cắt bánh Cu Tí Ví dụ: Stdinput 31 BÀI 4: ARMY GAME Stdoutput (GAME.CPP) Cu Tí chơi trò chơi quân sau: Bản đồ quân địch lưới ô vuông cỡ Khi Cu Tí bắn đạn pháo vào đồ quân đạn pháo phá hủy ơ: - Đạn trúng vào ô Đạn trúng vào cạnh ô Cho biết Cu Tí phải bắn lần đạn pháo để phá hủy toàn đồ quân Dữ liệu vào: Hai số nguyên dương ) Kết ra: Số lần bắn đạn pháo Cu Tí Ví dụ Stdinput 22 Stdoutput BÀI 5: CHIỀU CAO CỦA TAM GIÁC (TRIANGLE.CPP) Cho hai số nguyên dương Hãy tìm chiều cao nhỏ cho tồn tam giác có chiều cao , cạnh đáy có diện tích tối thiểu Dữ liệu vào: Hai số nguyên dương ) Kết ra: Chiều cao nhỏ tam giác thỏa mãn diện tích tam giác Ví dụ Stdinput 22 17 100 Stdoutput 12 BÀI 6: MUA K TẶNG (SALE.CPP) Cu Tí phân cơng mua bút chì cho lớp đầu năm học Số bút chì cần mua Trong cửa hàng, giá mua lẻ bút chì Tuy nhiên cu Tí học sinh nên cửa hàng cho hưởng sách ưu đãi đầu năm học Cụ thể bút chì mà cu Tí mua cậu ta cửa hàng tặng thêm cho bút chì Yêu cầu: Xác định số tiền tối thiểu mà cu Tí cần mang theo để tới cửa hàng mang � bút chì Dữ liệu vào: ba số nguyên dương cách dấu cách Kết ra: số tiền cu Tí cần mang theo Ví dụ: Stdinput 36 5 Stdoutput 150 BÀI 7: Bảng số (GIRD.CPP) Cho bảng số - Có cột, đánh số từ trái qua phải từ đến Có vố số hàng, đánh số từ 1, từ lên Giá trị có dạng sau: 20 22 24 26 28 11 13 15 17 19 10 12 14 16 18 Như vậy, ô (giao hàng cột 3) có giá trị Yêu cầu: Giá trị ô (là ô giao hàng r cột c) Dữ liệu vào: Hai số nguyên dương cách dấu cách Kết ra: Giá trị Ví dụ: Stdinput 63 Stdoutput 25 BÀI 8: So sánh ba số (TRIPLETS.CPP) HD có ba số nguyên dương HP có ba số nguyên dương Hai anh em chơi trò chơi so sánh sau với cặp - Nếu HD điểm Nếu HP điểm Nếu khơng điểm u cầu: In số điểm HD HP Dữ liệu vào: Sáu số nguyên dương cách dấu cách Kết ra: Ghi hai số nguyên dương theo thứ tự điểm HD HP Ví dụ Stdinput 567 10 Stdoutput 11 BÀI 9: XẾP ĐÁ (TABLE.CPP) Cuội thích chơi trò chơi với sưu tập gồm � viên đá mình: Xếp � viên đá lên bảng hình chữ nhật chia thành lưới ô vuông đơn vị, cho ô có khơng q viên đá Ví dụ với � = 5, Cuội xếp chúng vào bảng kích thước 1×5 (Hình a), 2×3 (Hình b) hay 4×2 (Hình c)… u cầu: Xác định kích thước bảng có chu vi nhỏ mà Cuội thực trò chơi Dữ liệu vào: số tự nhiên � < 231 Kết quả: Ghi hai số cách dấu cách độ dài hai cạnh bảng tìm Stdinput Stdoutput Stdinpu Stdoutpu Stdinpu Stdoutpu t 12 t 23 t 14 t 44 BÀI 10: TÁO QN (LARES.CPP) Có � ơng táo vào � bà táo Ngọc Hồng phân cơng nhiệm vụ năm Đầu tiên Ngọc Hồng chọn � táo (ơng bà) làm nhiệm vụ đặc biệt Bộ/Ngành, sau Ngọc Hồng chọn nhóm, nhóm gồm ơng táo bà táo để phân xuống gia đình hạ giới u cầu: Hãy giúp Ngọc Hồng xác định số nhóm nhiều để phân xuống gia đình hạ giới Ví dụ có � = 12 ơng táo � = bà táo, có � = táo phải làm nhiệm vụ đặc biệt Ngọc Hồng chọn tối đa nhóm phân xuống gia đình (8 ông táo bà táo) Trong táo lại (4 ơng bà) có táo làm nhiệm vụ đặc biệt, táo khơng phân việc Dữ liệu vào: số nguyên dương cách dấu cách Kết quả: Ghi số nguyên số nhóm nhiều chọn để phân xuống gia đình hạ giới Ví dụ Stdinput 12 Stdoutput BÀI 11: Đường mặt phẳng tọa độ (PATH.CPP) Trên mặt phẳng tọa độ cho điểm điểm Tại bước, di chuyển từ điểm đến điểm Yêu cầu: Bạn trả lời câu hỏi dạng cho biết di chuyển từ điểm M đến điểm N sau số bước di chuyển khơng? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng câu hỏi dòng tiếp theo, dòng thứ câu hỏi có số ngun dương Kết quả: Ghi dòng, dòng thứ đáp án câu hỏi , ghi YES di chuyển từ M đến N, ghi NO di chuyển Ví dụ Stdinput 1123 2123 3311 Stdoutput YES YES NO BÀI 12: RESTAURANT.CPP Giải thích Câu hỏi 1: di chuyển sau: (1,1) -> (2,1) -> (2,3) HD nhận vào làm đầu bếp nhà hàng bánh tiếng Nhiệm vụ HD phải cắt bánh hình chữ nhật kích thước thành: - Các miếng bánh cắt thành hình vng có kích thước Độ dài cạnh hình vng lớn u cầu: Bạn trả lời câu hỏi dạng cắt miếng bánh hình vng có cạnh lớn nhất? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng câu hỏi dòng tiếp theo, dòng thứ câu hỏi có số nguyên dương Kết quả: Ghi dòng, dòng thứ đáp án câu hỏi Ví dụ Stdinput 22 69 Stdoutput Giải thích Câu hỏi 1: bánh hình vng cỡ lớn có bánh Câu hỏi 2: Từ bánh ta cắt thành cắt thành: - 54 bánh - bánh Đáp án: BÀI 13: Đổ nước (WATER.CPP) Trong đài phun nước, bạn có bình dung tích lít Ban đầu bình không chứa nước Yêu cầu: Bạn sử dụng bình Hãy cho biết lấy xác lít nước hay khơng? u cầu: Bạn trả lời câu hỏi dạng cho biết sử dụng bình để lấy lít hay khơng? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng câu hỏi dòng tiếp theo, dòng thứ câu hỏi có số nguyên dương Kết quả: Ghi dòng, dòng thứ đáp án câu hỏi , ghi YES lấy c lít, ghi NO khơng lấy Ví dụ: Stdinput 534 364 Stdoutput YES NO Giải thích Câu hỏi 1: Bước 1: Bước 2: Bước 3: Bước 4: Bước 5: Bước 6: BÀI 14: STUDENTS.CPP Điểm học sinh lớp có tính chất sau: - Điểm số nguyên từ đến 100 Điểm số nhỏ 40 bị trượt Thang điểm làm tròn tính sau: - Mốc thang điểm số nguyên chia hết cho 5: Nếu khoảng cách điểm học sinh với mốc thang điểm (đương nhiên cao điểm hs) < điểm học sinh làm tròn thành mốc thang điểm Nếu điểm hs < 38 điểm vĩnh viễn khơng làm tròn bị trượt Yêu cầu: Cho biết điểm học sinh Bạn tính điểm học sinh sau làm tròn? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng học sinh lớp học dòng tiếp theo, dòng thứ số nguyên điểm số học sinh Kết quả: Ghi dòng, dòng thứ điểm sau làm tròn học sinh Ví dụ: Stdinput 73 67 38 33 Stdoutput 75 67 40 33 Giải thích Tên HS Điểm cũ 73 67 38 33 Hs 1: Mốc 75 – 73 = < lên làm tròn Hs 2: Mốc 70 – 67 = 3, không nhỏ lên nguyên Hs 3: Mốc 40 – 38 = < lên làm tròn 40 Đỗ vớt, Hs 4: Điểm 33 < 38 nên vĩnh viễn khơng đư tròn BÀI 15: Trồng (TREE.CPP) HD trồng loại có vòng sinh trưởng năm Vào mùa xuân, tăng gấp đôi chiều cao, vào mùa hè tăng chiều cao thêm Yêu cầu: Biết ban đầu HD có chiều cao : Bạn trả lời câu hỏi dạng sau lần sinh trưởng, cao mét? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng câu hỏi dòng tiếp theo, dòng thứ câu hỏi có số ngun dương Kết quả: Ghi dòng, dòng thứ đáp án câu hỏi , chiều cao sau lần sinh trưởng Ví dụ: Stdinput Stdoutput Giải thích Câu hỏi 1: Câu hỏi 2: Cây cao gấp đôi Câu hỏi 3: BÀI 16: SỐ GẦN NHẤT (CLOSEST.CPP) Yêu cầu: Bạn trả lời câu hỏi dạng “cho ba số nguyên Bạn tìm bội số gần Nếu có nhiều đáp án, in đáp án nhỏ nhất?” Dữ liệu vào: - Dòng 1: số nguyên dương số lượng câu hỏi dòng tiếp theo, dòng thứ câu hỏi có số nguyên dương Kết quả: Ghi dòng, dòng thứ đáp án câu hỏi Ví dụ: Stdinput 349 395 -2 Stdoutput 348 392 Giải thích Bội số gần 349 348 Bội số gần 395 392 Bội số gần BÀI 17: Tính tổng, max, Đọc vào dãy số nguyên Đưa kết hình: a) Tính tổng trung bình cộng số đọc b) Tìm giá trị bé nhất, giá trị lớn Ví dụ: Stdinput 1234567 Stdoutput 36 4.5 Giải thích 36 = + + +4 +5 +6 +7 +8 Min = Max = BÀI 18: Phân tích thừa số ngun tố Lập chương trình phân tích số nguyên dương n thành thừa số nguyên tố Ví dụ: Stdinput 18 56 Stdoutput 2*3*3 2*2*2*7 Giải thích 18 = 2*3*3 56 = 2*2*2*7 BÀI 19: Tính tổng chữ số số nguyên dương N Lập chương trình tính tổng chữ số số nguyên dương N Ví dụ: Stdinput 18 123456789 Stdoutput 45 Giải thích 1+8 + + +4 + + +7 + + BÀI 20: Phá vỡ kỷ lục (BREAKING.CPP) HD chơi game bóng rổ, sau lần chơi, số điểm HD ghi lại thành dãy số Sau game thứ , HD kiểm tra xem anh có phá vỡ kỷ lục điểm cao chìm sâu kỷ lục điểm thấp Yêu cầu: Đếm số lần phá kỷ lục cao điểm số lần phá kỷ lục điểm thấp nhất? Dữ liệu vào: - Dòng 1: số nguyên dương số lượng game HD chơi Dòng chứa số nguyên số điểm HD Kết quả: Ghi hai số nguyên theo thứ tự số lần phá kỷ lục cao điểm số lần phá kỷ lục điểm thấp Ví dụ: Stdinput 10 20 20 25 10 21 36 10 28 35 24 42 Giải thích Test Giải thích Test Stdoutput 24 40 b Đếm số lớn 10 c Đếm số nằm đoạn [10, 500] d Đếm xem có số số lớn BÀI 38 Lập trình đưa vào dãy số a1, a2,…, an vào máy từ bàn phím () Đưa hình số bé thứ tự dãy số BÀI 39 Lập trình đọc từ bàn phím dãy n số ngun ) đếm xem có số lẻ Đưa hình số lượng số lẻ BÀI 40 Lập trình đưa vào dãy số a 1, a2,…, an vào máy từ bàn phím ) Đưa hình theo u cầu sau: Dòng 1: Có tất ? số nguyên tố dãy số nhập Dòng 2: Vị trí số nguyên tố theo thứ tự nhập vào BÀI 41 Lập trình đọc từ bàn phím dãy n số nguyên ) xếp lại dãy số theo nguyên tắc sau: Các số chẵn đầu dãy, số lẻ cuối dãy Đưa kết hình BÀI 42 Cho dãy n số nguyên A1, A2,…, An ), sau làm việc sau: a Tìm số số trước cộng b Tìm ba số dãy thoả mãn điều kiện Ai = Ai-1 + Ai+1 Ví dụ: Input Output N=6 56 125367 BÀI 43 Lập chương trình chuyển đổi số N hệ thập phân sang hệ nhị phân Ví dụ: 10 = 1010 BÀI 44: IP (IP.CPP) Ở công ty IBN, nhân viên nhận vào làm việc cho số IP Đương nhiên, nhân viên công ty có số IP khác Khi ktuan lên làm nhiệm vụ cung cấp IP cho nhân viên nhận rằng: người làm trước tắc trách, cung cấp IP không khoa học Nhiệm vụ ktuan cung cấp IP cho nhân viên vào làm việc ardiankp Số IP cần cung cấp số nguyên dương nhỏ mà không trùng với số IP nhân viên Yêu cầu: Hãy giúp ktuan giải vấn đề Dữ liệu vào: - Dòng đầu gồm số N – số nhân viên công ty (1≤ N ≤ 500000) - N dòng sau dòng tương ứng số IP lân lượt N nhân viên Kết quả: Một dòng chứa số IP cần tìm Ví dụ: Stdinput Stdoutput 123 235 147 BÀI 45 SOCK (SOCK.CPP) Bé Hải Dương có tất, tất thứ có màu Bé Hải Dương muốn biết bé có tất đôi tất bạn lớp người đơi, biết tất ghép đôi màu Dữ liệu vào: - Dòng đầu gồm số N – số tất mà bé Hải Dương có (1≤ N ≤ 100) - Dòng số nguyên dương màu tất Kết quả: Một dòng chứa số lượng bạn nhận đơi tất bé Hải Dương Ví dụ: Stdinput Stdoutput 10 20 20 10 10 30 50 10 20 Bài 46 (PAPER.CPP) Bé Bi-Bo có miếng giấy, miếng giấy có ghi số nguyên dương đoạn Bé muốn ghép bìa thành số Như vậy, với n miếng bìa, Bé ghép thành div cặp bìa chứa số Bé Bi-Bo học phép chia hết Bé muốn đếm xem số div số có số chia hết cho Ví dụ: Nếu bé có bìa ghi 123 99 bé ghép thành số 12399 99123 Yêu cầu: Bạn đếm số lượng lớn cặp bìa chứa số chia hết cho mà Bé Bi-Bo ghép được? Dữ liệu vào: - Số lượng câu hỏi - Mỗi câu hỏi có dạng: o Dòng chứa số ngun số lượng miếng bìa mà Bé Bi-Bo có o Dòng chứa số nguyên dương, số thứ số ghi miếng bìa Kết ra: Ghi số số lượng lớn số chia hết cho Ví dụ: Stdinput Stdoutput 123 123 99 1 23 10 BÀI 47 (BIEUTHUC.CPP) Nhập vào số nguyên dương theo thứ tự Bạn chèn dấu ngoặc, dấu + - * số cho kết phép tính lớn Ví dụ: Với , có phép tính sau: Lưu ý, dấu +, -, * chèn a b, b c (tức không thay đổi thứ tự nhập vào, ví dụ trên, khơng có phép tốn Bạn in hình giá trị lớn thể phép tính Dữ liệu vào: - Số lượng câu hỏi Mỗi câu hỏi có dạng: Kết ra: Ghi dòng, dòng số giá trị lớn thể phép tính Ví dụ: INPUT 123 10 OUTPUT 60 BÀI 48: MOVING (MOVING.CPP) Hải Dương có hình vng cạnh L mặt phẳng tọa độ - Tại thời điểm , đỉnh góc bên trái hình vng nằm gốc tọa độ khối hình vng di chuyển theo chiều dương đường thẳng Hình vng số di chuyển với vận tốc , hình vng số di chuyển với vận tốc Yêu cầu: Bạn trả lời câu hỏi có dạng: Thời gian để diện tích phần giao hình vng Q Dữ liệu vào: - Dòng 1: - Dòng 2: Số lượng câu hỏi - dòng tiếp theo, dòng số Kết ra: Ghi dòng, dòng thứ đáp án câu hỏi với sai số Ví dụ: Stdinput Stdoutput 10 4.142135 0.000000 50 100 BÀI 49: APPLE AND ORANGE (APPLE.CPP) Cạnh nhà bé Hải Dương có táo bên trái (tọa độ ), cam bên phải (tọa độ trục tọa độ Khi táo cam chín rơi xuống cách gốc khoảng bất kỳ, rơi bên phải, rơi bên trái Nếu rơi vào đoạn thẳng điểm có tọa độ đến điểm có tọa độ thuộc Bé Hải Dương Cho biết khoảng rơi táo cam Bạn cho biết Bé Hải Dương có táo bào nhiêu cam Dữ liệu vào: - Dòng 1: - Dòng 2: - Dòng 3: - Dòng 4: số nguyên, số thứ khoảng cách táo rơi khỏi táo - Dòng 5: số nguyên, số thứ khoảng cách cam rơi khỏi cam Kết ra: - Dòng 1: Ghi số táo mà Hải Dương nhận - Dòng 2: Ghi số cam mà Hải Dương nhận Ví dụ: Stdinput Stdoutput 11 Quả táo rơi vị trí: 5-2=3 15 Quả táo rơi vị trí: 5+2=7 32 (rơi vào nhà Hải Dương) -2 Quả táo rơi vị trí: 5+1=6 -6 Quả cam rơi vị trí: 15+5=20 Quả cam rơi vị trí: 156=9 (rơi vào tay Hải Dương) BÀI 49: TỔNG ĐOẠN CON LIÊN TIẾP Lập trình đưa vào dãy số a1, a2,…, an vào máy từ bàn phím () hai số nguyên dương Yêu cầu: Tính tổng Stdinput Stdoutput 524 12345 BÀI 50: TỔNG ĐOẠN CON LIÊN TIẾP Lập trình đưa vào dãy số a1, a2,…, an vào máy từ bàn phím () câu hỏi dạng hai số nguyên dương tính tổng Stdinput Stdoutput 12345 10 24 14 45 BÀI 51: Đếm số nguyên tố (HSG TP năm học 2014 - 2015) Bạn cho biết số dãy Để tránh việc phải đọc lượng liệu lớn, dãy cho ba số nguyên dương , phần tử xác định theo cơng thức: Có T câu hỏi dạng yêu cầu cho biết đoạn có số nguyên tố? Dữ liệu: Vào từ file văn BAI3.INP - Dòng 1: Chứa hai số nguyên dương N, T - Dòng 2: Dòng chứa ba số nguyên dương xác định dãy () - T dòng tiếp theo, dòng thứ chứa số tương ứng với câu hỏi đoạn có số nguyên tố Các số dòng input file ghi cách dấu cách Kết quả: Ghi file văn BAI3.OUT - Ghi T dòng, dòng thứ i ghi câu trả lời cho câu hỏi i Ví dụ: BAI3.INP 54 219 13 24 35 44 BAI3.OUT 2 Giải thích Dãy Đoạn Đoạn Đoạn Đoạn [1,3] [2,4] [3,5] [4,4] là là có có có có 2 số số số số nguyên nguyên nguyên nguyên tố tố tố tố Chú ý: - 40% số điểm ứng với test có - 40% số điểm ứng với test có - 20% số điểm ứng với test có BÀI 52: SỐ FIBONACI Lập chương trình in số Fibonaci biết rằng: - F0 = F1 = Fn = Fn −1 + Fn − với n >= Ví dụ: F0 = 1, F1 = 1, F2 = 2, F3 = 3, F4 = 5, F5 = 8, F6 = 13… BÀI 53: ARRAY ROTATION (ROTATION.CPP) Cho dãy số nguyên Sau lần xoay sang phải từ dãy ta dãy số Bé Hải Dương xoay dãy số sang phải k lần, sau hỏi Bé Hải Phong câu hỏi: cho số nguyên , cho biết giá trị dãy số (sau quay sang phải lần) Dữ liệu vào: - Dòng 1: - Dòng số nguyên dương - dòng tiếp theo, dòng số nguyên Kết ra: Ghi dòng, dòng thứ đáp án câu hỏi Ví dụ: Stdinput Stdoutput 323 Dãy số ban đầu: 123 Xoay lần 1: [3, 2, 1] Xoay lần 2: BÀI 54: DÃY CON LIÊN TIẾP KHÔNG GIẢM DÀI NHẤT (INCSEG.CPP) Cho dãy số nguyên Hãy tìm đoạn gồm phần tử liên tiếp dãy A: thỏa mãn hai điều kiện: − Các phần tử đoạn có thứ tự khơng giảm: − Số phần tử đoạn nhiều Quy ước: Đoạn gồm phần tử dãy A coi có thứ tự khơng giảm Dữ liệu vào: - Dòng 1: Số nguyên dương N tương ứng số lượng phần tử dãy A - Dòng tiếp theo, chứa N số nguyên Kết quả: Ghi số số lượng phần tử đoạn không giảm dài tìm được? Ví dụ: Stdinput Stdoutput 12 88 99 11 22 22 33 11 66 33 44 55 77 So sánh A[i] với A[i+1] i 10 11 12 13 A[i] 88 99 11 22 22 33 11 66 33 44 55 77 tg 2 2 res 4 BÀI 55: BIỂU THỨC (EXPRESS.CPP) Cho số nguyên dương , bạn phải đặt số nguyên dương phép nhân phép cộng cho kết biểu thức lớn Ví dụ: với dãy 4, 7, 1, 5, bạn có biểu thức: 4+7*1+5*3 * *1 + + Chú ý: Không thay đổi thứ tự xuất biểu thức thu Dữ liệu vào − Dòng chứa số nguyên dương − N dòng tiếp theo, dòng thứ chứa số nguyên dương Kết quả: Ghi số nguyên dương giá trị lớn biểu thức thu Ví dụ: EXPRESS.INP EXPRESS.OUT 44 Giải thích Biểu thức thu là: * + + 5*3 BÀI 56: ĐẾM PHÂN PHỐI (COUNTING1.CPP) Cho dãy số nguyên Hãy in số lần xuất có giá trị Dữ liệu vào: - Dòng 1: - Dòng số nguyên dương Kết ra: Ghi 100 số nguyên dương theo thứ tự số lần xuất giá trị từ đến 99 dãy số Ví dụ: Stdinput Stdoutput 100 020200101210110 63 25 73 98 73 56 84 86 57 16 83 1 1 0 25 81 56 53 98 67 99 12 83 89 3 0 0 2 1 80 91 39 86 76 85 74 39 25 90 59 1 0 0 1 10 94 32 44 89 30 27 79 46 96 27 1 1 0 32 18 21 92 69 81 40 40 34 68 78 2 2 1 2 24 87 42 69 23 41 78 22 90 99 89 1 1 2 50 30 20 43 70 95 33 46 44 69 48 33 60 65 16 82 67 61 32 21 79 75 75 13 87 70 33 BÀI 57: ĐẾM PHÂN PHỐI (COUNTING2.CPP) Cho dãy số nguyên Hãy in số lần dãy tăng dần Dữ liệu vào: - Dòng 1: - Dòng số nguyên dương Kết ra: Ghi số nguyên dương dãy sau tăng dần Ví dụ: Stdinput Stdoutput 100 1 3 9 10 63 25 73 98 73 56 84 86 57 16 83 16 18 20 21 21 22 25 81 56 53 98 67 99 12 83 89 25 25 27 27 30 30 80 91 39 86 76 85 74 39 25 90 59 33 33 33 34 39 39 10 94 32 44 89 30 27 79 46 96 27 42 43 44 44 46 46 12 23 32 40 48 13 24 32 40 50 16 25 32 41 53 32 24 50 69 79 18 21 92 69 81 40 40 34 68 78 87 42 69 23 41 78 22 90 99 89 30 20 43 70 95 33 46 44 48 33 60 65 16 82 67 61 32 21 75 75 13 87 70 33 Bướ c 56 67 74 81 87 94 56 57 59 60 61 63 68 69 69 69 70 70 75 75 76 78 78 79 81 82 83 83 84 85 87 89 89 89 90 90 95 96 98 98 99 99 65 73 79 86 91 67 73 80 86 92 i A[i] 1 So sanh A[1] voi cac pt khac 2 So sanh A[2] voi cac pt khac 3 So sanh A[3] voi cac pt khac 8 BÀI 58: KIỂM TRA BA CẠNH TAM GIÁC (TRIANGLE.CPP) Cho số nguyên dương độ dài đoạn thẳng Yêu cầu Bạn cho biết chọn đoạn thẳng đoạn thẳng để tạo thành tam giác, khơng tạo thành tam giác suy biến (có góc ), khơng thể tạo thảnh trường hợp Dữ liệu vào: - Dòng chứa số nguyên dương số lượng test dòng tiếp theo, dòng thứ chứa bốn số nguyên dương liệu test Kết quả: - Ghi dòng, dòng thứ ghi đáp án câu hỏi ghi TRIANGLE tạo tam giác, SEGMENT tạo thành tam giác suy biến, IMPOSSIBLE không tạo trường hợp Ví dụ: Stdinput 4213 7224 3591 Stdoutput TRIANGLE SEGMENT IMPOSSIBLE Giải thích Test 1: Tam giác tạo có độ dài cạnh 4, 2, Test 2: Tam giác suy biến từ cạnh có độ dài 2, 2, Test 3: Không tạo tam giác BÀI 59: PHẦN TỬ TRUNG VỊ (MEDIAN.CPP) Cho dãy số nguyên Hãy in phần tử trung vị dãy Biết rằng: Ta nói phần tử trung vị dãy C có độ dài M (M số lẻ) phần tử vị trí dãy sau xếp dãy C theo thứ tự tăng dần Ví dụ: Phần tử trung vị dãy {5,1,3} Dữ liệu vào: - Dòng 1: , số lẻ Dòng số nguyên Kết ra: Ghi giá trị phần tử trung vị Ví dụ: Stdinput 0124653 Stdoutput BÀI 60: SMALLEST DIFFERENCE (SDIFF.CPP) Cho dãy số nguyên Hãy tìm tất cặp cho đạt giá trị nhỏ Dữ liệu vào: - Dòng 1: Dòng số nguyên Kết ra: Ghi cặp số theo thứ tự tăng dần Ví dụ: Stdinput Stdoutput -20 30 10 -20 -3916237 -357920 -3620601 7374819 -7330761 30 6246457 -6461594 266854 12 -520 -470 -20 -3916237 -357920 -3620601 7374819 -20 30 -7330761 30 6246457 -6461594 266854 -520 -470 233445 5432 BÀI 57: KHUYẾN MẠI (DISCOUNT.CPP) Đến ngày giáng sinh năm mới, nhiều cửa hàng có chương trình khuyến mại để xả hàng cuối năm Hệ thống siêu thị BigC tiến hành việc Trong đợt khuyến mại này, người mua đồ giảm giá giá trị đồ có trị nhỏ Ban lãnh đạo muốn bạn viết chương trình xác định: người mua toàn sản phẩm siêu thị loại đơn vị người giảm giá lớn bao nhiêu? Dữ liệu vào - Dòng đầu ghi số N số mặt hàng siêu thị (1 ≤ N ≤ 1.000.000) Dòng ghi N số nguyên dương thể giá N mặt hàng siêu thị Giá trị mặt hàng ≤ ≤ 106 Kết quả: - Ghi số giảm giá lớn người người mua tồn sản phẩm siêu thị loại đơn vị Ví dụ: Stdinput Stdoutput 400 400 100 200 350 300 250 BÀI 58: KHIÊU VŨ (DANCE.CPP) Một làng quê có chàng trai đánh số từ tới cô gái đánh số từ tới Chàng trai thứ có chiều cao (), gái thứ có chiều cao () Trong buổi khiêu vũ, người ta muốn chọn số cặp nhảy Mỗi cặp nhảy gồm chàng trai gái cặp đó, chàng trai phải cao cô gái Mỗi chàng trai, cô gái làng không tham gia cặp nhảy Yêu cầu: Tìm số nhiều cặp nhảy thỏa mãn yêu cầu Dữ liệu vào − Dòng chứa hai số nguyên dương − Dòng chứa số nguyên dương () − Dòng chứa số nguyên dương () Kết quả: Ghi số nguyên số cặp nhảy theo phương án tìm Ví dụ Std Stdo inp utpu ut t 32 12 23 Chú ý: Ít 50% số điểm ứng với test có BÀI 59: VUI CHƠI CĨ THƯỞNG (CREAM.CPP) Sau trận đấu bóng đá chiều hơm qua, cô Nguyệt (Hà Tĩnh) cô Thanh (Nghệ An) tự hào học sinh Các cô lại tiếp tục “ liên quân miền Bắc Mỗi bên định đưa học sinh tập huấn đánh số Các em bên liên quân Nghệ-Tĩnh có số sức mạnh Các em liên quân miền Bắc có số sức mạnh Lần này, thầy Hùng định em thứ đội Nghệ-Tĩnh sân em thứ đội miền Bắc thi đấu Do vụ cá cược đội thắng tài trợ tất số kem số học sinh sân đội nên cô giáo muốn nhiều em sân tốt Sức mạnh đội tạm tính tổng số sức mạnh đội Đội có tổng sức mạnh lớn chiến thắng Yêu cầu: Hãy giúp cô giáo xác định số kem tối đa mà đội nhận Dữ liệu vào gồm dòng: • Dòng số nguyên dương số lượng học sinh tham gia tập huấn • Dòng thứ hai ghi số ngun • Dòng thứ ba ghi số ngun Kết quả: ghi số nguyên số lượng kem tối đa đội liên quân NghệTĩnh nhận Ví dụ: Stdinput 100 100 2 1000 Stdoutput BÀI 60: KSEQ1.CPP Bill Gates có chuyến từ thiện đến ngơi làng Utopia Ơng có N gói kẹo muốn phân phối gói cho trẻ em K làng (mỗi gói chứa số lượng khác loại bánh kẹo) Để tránh cãi đứa trẻ, ông muốn chọn K N gói cho độ bất cơng tối thiểu Giả sử K gói có (x1, x2, x3, xk) kẹo gọi, với xi số kẹo gói thứ i, cách xác định bất cơng Dữ liệu vào - Dòng số nguyên dương N − Dòng thứ số nguyên dương K − N dòng sau số kẹo N gói Số kẹo Kết quả: Ghi số nguyên kết tốn Ví dụ Stdinput Stdoutput 20 Stdinput 10 Stdoutput 10 100 300 200 1000 20 30 10 20 30 40 100 200 BÀI 61: HVSEQ.CPP Cho dãy số Khi đổi chỗ vị trí ta dãy số gọi hoán vị dãy số cho độ dài N Ví dụ: Dãy số có hốn vị − − − − − − Số lượng hoán vị tập N phần tử Bài toán sau: Cho dãy số Với hoán vị dãy X, ta xét dãy , ta tìm giá trị nhỏ dãy ký hiệu , có tất dãy X nên ta có giá trị , yêu cầu tìm giá trị lớn số giá trị Ví dụ: − − − − − − Với Với Với Với Với Với ta có ta có ta có ta có ta có ta có giá trị nhỏ giá trị nhỏ giá trị nhỏ giá trị nhỏ giá trị nhỏ giá trị nhỏ Vậy giá trị lớn số giá trị nhỏ tìm Dữ liệu vào − Dòng 1: N − Dòng 2: Dãy X − Dòng 3: Dãy Y Kết quả: Ghi số giá trị lớn tìm Ví dụ: Stdinput Stdoutput 3 2 41 21 34 12 BÀI 62: TẤM CÁCH NHIỆT (IZO.CPP) Một công ty sản xuất cách nhiệt nhiều tầng Mỗi tầng thứ i có hệ số cách nhiệt Các tầng đánh số từ hướng nóng bên ngồi Hơi nóng → || a1 | a2 | | | ai+1 | | an || → bên Hệ số cách nhiệt nhiệt đo cơng thức sau: Ví dụ: Hệ số cách nhiệt nhiệt sau: → || | | | || → Bạn viết chương trình, cho hệ số tầng cách nhiệt, xếp lại thứ tự tầng cách nhiệt cho hệ số cách nhiệt lớn Dữ liệu vào: - Dòng ghi số n số tầng nhiệt - n dòng tiếp theo: dòng i ghi số nguyên dương thể hệ số cách nhiệt lớp cách nhiệt thứ Kết ra: Ghi số hệ số cách nhiệt lớn tìm Ví dụ: Stdinput Stdoutput 24 BÀI 63: Nối điểm đen trắng (BWPOINTS.CPP) Trên trục số thực cho n điểm đen n điểm trắng hoàn toàn phân biệt Các điểm đen có tọa độ ngun điểm trắng có tọa độ nguyên Người ta muốn chọn k điểm đen k điểm trắng để nối điểm đen với điểm trắng cho k đoạn thẳng tạo đơi khơng có điểm chung Yêu cầu: Cho tọa độ n điểm đen tọa độ điểm trắng Hãy tìm giá trị k lớn thỏa mãn yêu cầu Dữ liệu vào • Dòng thứ chứa số ngun dương n () • Dòng thứ hai chứa số a1, a2, …, an ( , ) • Dòng thứ ba chứa số b1, b2, …, bn ( , ) Các số dòng ghi cách dấu cách Kết quả: Ghi số nguyên số k lớn tìm Ví dụ: BWPOINTS.INP BWPOINTS.OUT 031 -3 -1 ... PROFESSOR (ANGRY.CPP) Lớp học Toán rời rạc CTP IT có học sinh, Giáo sư Hải Dương hủy buổi học bắt đầu vào học mà có học sinh lớp Bạn cho biết buổi học có bị hủy hay không? Dữ liệu vào: - Số lượng... {5,5,5} không thỏa mãn điều kiện BÀI 22: CHỜ XE BUÝT (BUS.CPP) Hùng làm việc cho công ty buýt TPC, cậu giao nhiệm vụ thu thập thông tin học sinh TPC để công ty thực việc tối ưu hóa lịch phục vụ học. .. điểm hs) < điểm học sinh làm tròn thành mốc thang điểm Nếu điểm hs < 38 điểm vĩnh viễn khơng làm tròn bị trượt Yêu cầu: Cho biết điểm học sinh Bạn tính điểm học sinh sau làm tròn? Dữ liệu vào: -

Ngày đăng: 25/05/2020, 23:30

TỪ KHÓA LIÊN QUAN

w