Bài 1 (6 điểm): Tiền điện Mỗi lần có tin nhắn mà Công ty điện lực báo về gồm: số kWh điện đã sử dụng và số tiền điện phải nộp trong một tháng của gia đình Nam. Mẹ lại yêu cầu Nam tính lại số tiền điện mà gia đình Nam phải nộp cho Công ty điện lực để mẹ cậu đối chiếu với thông báo trong tin nhắn gửi về. Yêu cầu: Hãy giúp Nam tính số tiền điện mà gia đình cậu phải nộp cho Công ty điện lực trong một tháng. Biết rằng thuế giá trị gia tăng (GTGT) là 10% và quy định giá bán lẻ điện sinh hoạt cho các hộ gia đình của Công ty điện lực như sau: Số kWh điện sử dụng (hộtháng) Mức giá (nghìn đồngkWh) Bậc 1: Từ 0 50 1.678 Bậc 2: Từ 51 100 1.734 Bậc 3: Từ 101 200 2.014 Bậc 4: Từ 201 300 2.536 Bậc 5: Từ 301 400 2.834 Bậc 6: Từ 401 trở lên 2.927 (Giá bán trên chưa bao gồm thuế giá trị gia tăng GTGT) Dữ liệu vào: Đọc từ tệp văn bản BAI1.INP gồm một số nguyên dương N (01 Yêu cầu: Cho hai số nguyên n và k (0≤n≤40, k không vượt quá độ dài xâu Fn). Hãy xác định số lượng ký tự A xuất hiện trong k ký tự đầu tiên của xâu Fn. Dữ liệu vào: Đọc từ tệp văn bản BAI2.INP gồm: • Dòng đầu ghi số nguyên T là số test cần xử lý (1≤T≤100). • Mỗi dòng trong T dòng sau ghi hai số n và k cách nhau ít nhất một dấu cách. Dữ liệu ra: Ghi ra tệp văn bản BAI2.OUT, ứng với mỗi test trên một dòng dưới dạng một số nguyên. Ví dụ:
Trang 1Trường THPT Đặng Thai Mai ĐỀ THI GIAO LƯU ĐỘI TUYỂN HSG (Lần 2)
Năm học: 2019-2020 Môn thi: Tin học - Lớp 11 THPT
Thời gian: 180 phút (không kể thời gian giao đề)
Ngày thi: 23/02/2020
Đề này có 05 bài, gồm 04 trang
Tổng quan bài thi:
Tên bài File chương trình File dữ liệu vào File kết quả
Dữ liệu vào là đúng đắn, không cần phải kiểm tra Trong các file dữ liệu vào/ra, nếu dữ liệu trên cùng một dòng thì được cách nhau bởi ít nhất một dấu cách Dấu (*) trong tên file chương trình biểu thị đuôi file tùy thuộc vào NNLT sử dụng ('pas' đối với NNLT PASCAL, 'c' đối với NNLT C, )
Bài 1 (6 điểm): Tiền điện
Mỗi lần có tin nhắn mà Công ty điện lực báo về gồm: số kWh điện đã sử dụng và số tiền điện phải nộp trong một tháng của gia đình Nam Mẹ lại yêu cầu Nam tính lại số tiền điện mà gia đình Nam phải nộp cho Công ty điện lực để mẹ cậu đối chiếu với thông báo trong tin nhắn gửi về
Yêu cầu: Hãy giúp Nam tính số tiền điện mà gia đình cậu phải nộp cho Công ty điện lực
trong một tháng Biết rằng thuế giá trị gia tăng (GTGT) là 10% và quy định giá bán lẻ điện sinh hoạt cho các hộ gia đình của Công ty điện lực như sau:
Số kWh điện sử dụng (hộ/tháng)
Mức giá (nghìn đồng/kWh)
(Giá bán trên chưa bao gồm thuế giá trị gia tăng GTGT)
Dữ liệu vào: Đọc từ tệp văn bản BAI1.INP gồm một số nguyên dương N (0<N≤10000),
với N là số kWh điện mà gia đình Nam đã sử dụng trong một tháng
Dữ liệu ra: Ghi ra tệp văn bản BAI1.OUT gồm ba số tương ứng trên ba dòng, mỗi số
được làm tròn đến ba chữ số thập phân
• Dòng 1: Số tiền tương ứng với giá bán điện của công ty
• Dòng 2: Số tiền tương ứng với thuế GTGT
Trang 2• Dòng 3:Tổng số tiền điện mà hộ gia đình phải nộp trong tháng đó.
Ví dụ:
31.762 349.384
Bài 2 (5 điểm): Xâu Fibonacci
Xét dãy xâu F0, F1, F2 , xây dựng theo quy tắc sau:
F0 = 'A'
F1 = 'B'
F2 = 'AB'
Fn = Fn-2 + Fn-1, n>1
Yêu cầu: Cho hai số nguyên n và k (0≤n≤40, k không vượt quá độ dài xâu Fn) Hãy xác định số lượng ký tự 'A' xuất hiện trong k ký tự đầu tiên của xâu Fn
Dữ liệu vào: Đọc từ tệp văn bản BAI2.INP gồm:
• Dòng đầu ghi số nguyên T là số test cần xử lý (1≤T≤100)
• Mỗi dòng trong T dòng sau ghi hai số n và k cách nhau ít nhất một dấu cách
Dữ liệu ra: Ghi ra tệp văn bản BAI2.OUT, ứng với mỗi test trên một dòng dưới dạng một
số nguyên
Ví dụ:
4
0 1
1 1
3 2
7 7
1 0 1 3
Bài 3 (4 điểm): Virut Covid-19
Một cơ quan có N nhân viên được đánh số thứ tự từ 1 đến N Mỗi người có một phòng làm việc riêng của mình Do nhu cầu công việc, hàng ngày mỗi nhân viên có thể phải tiếp xúc với một số nhân viên khác Vào một ngày làm việc bình thường, có một nhân viên bị nhiễm Virut Covid-19, nhưng do không biết nên người này vẫn đi làm Đến cuối ngày làm việc người ta mới phát hiện ra người nhiễm bệnh Virut Covid-19 đầu tiên, khả năng lây lan của Virut Covid-19 rất nhanh chóng: một người nhiễm bệnh nếu tiếp xúc với một người khác có thể sẽ truyền bệnh cho người này
Yêu cầu: Hãy giúp các bác sĩ kiểm tra xem cuối ngày hôm đó, có tối đa bao nhiêu người
có thể sẽ nhiễm Virut Covid-19 và đó là những người nào để còn cách ly Người có tiếp xúc với người nhiễm bệnh được coi là người nhiễm bệnh
Dữ liệu vào: Đọc từ tệp văn bản BAI3.INP gồm:
• Dòng đầu tiên ghi 2 số tự nhiên N, K (1≤N≤105, 1≤K≤N) tương ứng là số lượng người làm việc trong cơ quan và số hiệu của nhân viên đã nhiễm Virut Covid-19 đầu tiên
Trang 3• Dòng thứ i trong N dòng tiếp theo ghi danh sách những người có tiếp xúc với người thứ i theo cách sau: số đầu tiên M của dòng là tổng số nhân viên đã gặp người thứ i, tiếp theo là M số tự nhiên lần lượt là số hiệu của các nhân viên đó Nếu M=0 có nghĩa rằng không ai đã tiếp xúc với người thứ i
• Lưu ý: Dữ liệu được cho đảm bảo tổng số lần tiếp xúc của tất cả nhân viên trong
cơ quan không vượt quá 10 6
Kết quả ra: Ghi ra tệp văn bản BAI3.OUT gồm:
• Dòng đầu tiên ghi số S là tổng số người có thể bị lây nhiễm Virut Covid-19
• Dòng thứ 2 liệt kê tất cả nhân viên có thể bị lây nhiễm Virut Covid-19 cần cách
ly, danh sách cần được sắp theo thứ tự tăng dần của số hiệu nhân viên
Ví dụ:
5 1
2 2 3
2 1 3
2 1 2
1 5
1 4
3
1 2 3
Bài 4 (3 điểm): Tiền Taxi
Vào đêm Noel, Hòa cùng M người bạn của mình lên kế hoạch để đi chơi Nhà của Hòa và các bạn của cô nằm trên cùng một con đường, các nhà được đánh vị trí từ 1 đến N, mỗi nhà cách nhau 1 mét Nhà của Hòa ở vị trí 1 và địa điểm vui chơi ở vị trí N Nhà M người bạn ở các vị trí a1, a2, , aM Ngoài ra trên tuyến đường còn có P trạm xe buýt tại các
vị trí b1, b2, , bP Từ nhà mình, Hòa lần lượt đi đến nhà của các bạn mình theo kế hoạch Cô có thể đi bằng taxi hoặc xe buýt Với taxi, cô có thể bắt từ bất kì vị trí nào, giá của taxi là T đồng/mét Với xe buýt, cô chỉ có thể bắt từ trạm này và đi đến một trạm khác, giá của xe buýt là B đồng/lượt không phân biệt khoảng cách Bạn hãy giúp Hòa tìm cách
đi đón tất cả các bạn và đến điểm vui chơi với số tiền phải trả là ít nhất
Yêu cầu: Cho biết số nhà trên đường, các nhà phải đến đón, số trạm xe buýt và số tiền
đi xe taxi, xe buýt, bạn hãy tìm cách đi sao cho đến thăm đúng thứ tự các nhà và đến vị trí
N với số tiền ít nhất
Dữ liệu vào: Đọc từ tệp văn bản BAI4.INP gồm:
• Dòng thứ nhất chứa các số nguyên N, M, P, T, B là số nhà, các nhà phải đón, số trạm xe buýt và số tiền đi taxi, xe buýt (1 ≤ N ≤ 109 | 0 ≤ M,P ≤ 105 | 1 ≤ T,B ≤ 104)
• Dòng thứ hai chứa M số nguyên là thứ tự các nhà phải đến, số thứ ai là vị trí của nhà thứ i (1 ≤ ai ≤ N) Dữ liệu cho đảm bảo không có 2 nhà trùng vị trí
• Dòng cuối cùng chứa P số nguyên là vị trí các trạm xe buýt theo thứ tự tăng dần,
số thứ bi là vị trí của trạm thứ i, mặc định có trạm ở vị trí 1 và N (1 ≤ bi ≤ N)
Kết quả ra: Ghi ra tệp văn bản BAI4.OUT gồm một số nguyên duy nhất là số tiền ít nhất
phải trả
Ví dụ:
Trang 4BAI4.INP BAI4.OUT
10 2 2 1000 2000
5 8
4 7
8000
(Giải thích test: Đầu tiên Hòa đi xe buýt từ 1 đến 4 Sau đó đi taxi từ 4 đến 5, 5 đến 8 và 8 đến 10 Tổng số tiền là: 2000+1000+3000+2000=8000 đồng).
Bài 5 (2 điểm): Xâu Palindrome
Một xâu kí tự được gọi là xâu Palindrome (đối xứng) nếu ta đọc từ trái sang phải hay đọc từ phải sang trái đều giống nhau
Yêu cầu: Cho trước một xâu kí tự S chỉ gồm các kí tự từ 'a' 'z' Hãy tìm xâu palindrome
dài nhất là xâu con của S Xâu con của S là xâu gồm một số kí tự được chọn liên tiếp hoặc không liên tiếp trong xâu S (thứ tự giữ nguyên) Một kí tự cũng được coi là xâu palindrome
Dữ liệu vào: Đọc từ tệp văn bản BAI5.INP gồm một xâu kí tự S (có độ dài không quá
104)
Kết quả ra: Ghi ra tệp văn bản BAI5.OUT gồm một số nguyên dương là độ dài xâu con
palindrome dài nhất
Ví dụ:
-Hết -Cán bộ coi thi không giải thích gì thêm.
Trang 5Trường THPT Đặng Thai Mai HƯỚNG DẪN CHẤM GIAO LƯU
ĐỘI TUYỂN HSG (Lần 2) Năm học: 2019-2020 Môn thi: Tin học - Lớp 11 THPT
HƯỚNG DẪN CHẤM
Bài 1 (6 điểm): Tiền điện
Bài 2 (5 điểm): Xâu Fibonacci
Bài 3 (4 điểm): Virut Covid-19
Bài 4 (3 điểm): Tiền Taxi
Bài 5 (2 điểm): Xâu Palindrome