Chọn học sinh giỏi THCS năm học 2023- 2024 Thanh Hóa

Giới hạn thời gian: 0.5s / Giới hạn bộ nhớ: 256M

Điểm: 8

Lam đặt tên các biến trong mã nguồn chương trình của mình theo chuẩn PropCase. Chuẩn PropCase quy ước như sau:

- Tên biến gồm các chữ cái Latinh 'A'..'Z', 'a'..'z' và chữ số '0'..'9';
- Chữ cái đầu tiên của tên biến không bắt đầu bằng chữ số '0'..'9';
- Chữ cái đầu tiên của mỗi từ tiếp theo trong tên biến được viết in hoa;
- Ví dụ: DiemTbHk1, lop9A10, ...

Lam muốn tải mã nguồn của mình lên Github với các biến được đặt tên theo chuẩn join_case có quy ước:

- Tên biến gồm các chữ cái Latinh 'a'..'z', chữ số '0'..'9' và dấu gạch nối '_';
- Không bắt đầu bằng chữ số '0'..'9' hoặc dấu gạch nối '_';
- Hai từ trong tên biến được tách nhau bởi dấu '_';
- Ví dụ: diem_tb_hk1, lop9_a10, ...
Yêu cầu:

Hãy giúp Lam đổi tên biến từ chuẩn PropCase sang chuẩn join_case.

Dữ liệu:

Vào từ tệp CAU1.INP gồm một xâu độ dài n (1≤n≤1000) là một tên biến đặt theo chuẩn PropCase.

Kết quả:

Ghi ra tệp CAU1.OUT một xâu là tên biến đặt lại theo chuẩn join_case.

Ví dụ 1:

CAU1.INP

DiemTbHk1

CAU1.OUT

diem_tb_hk1
Ví dụ 2:

CAU1.INP

lop9A10

CAU1.OUT

lop9_a10

Giới hạn thời gian: 0.5s / Giới hạn bộ nhớ: 256M

Điểm: 6

Đếm số cách mua một con gà và một con chó sao cho tổng số tiền phải trả để mua cả hai con không vượt quá n (3≤n≤2×10^9). Biết số tiền mua gà luôn ít hơn số tiền mua chó. Số tiền mua gà và mua chó là các số nguyên dương.

Dữ liệu:

Vào từ tệp CAU2.INP gồm một dòng ghi số nguyên dương n.

Kết quả:

Ghi ra tệp CAU2.OUT gồm một dòng ghi một số nguyên là đáp số của bài toán.

Ví dụ:

CAU2.INP

5

CAU2.OUT

4

Giải thích

Có 4 cách mua cặp (gà, chó) phải trả tổng số tiền không quá 5 là: (1,2); (1,3); (1,4); (2,3).
Ràng buộc:
- Có 70% số test ứng với 70% số điểm của bài có n≤10^3;
- Có 20% số test ứng với 20% số điểm của bài có n≤10^6;
- Có 10% số test ứng với 10% số điểm của bài có n≤〖2×10〗^9.

Giới hạn thời gian: 0.42s / Giới hạn bộ nhớ: 256M

Điểm: 4

Một số tự nhiên được gọi là số đối xứng nếu viết các chữ số của nó theo chiều ngược lại thì vẫn thu được chính nó. Ví dụ, các số 88, 858 là những số đối xứng. Một số được coi là số đặc biệt nếu nó là số đối xứng và có từ 3 ước số nguyên tố khác nhau trở lên. Ví dụ: 858 là số đặc biệt vì nó là số đối xứng và có 4 ước nguyên tố khác nhau là 2, 3, 11, 13; còn số 88 không là số đặc biệt vì nó đối xứng nhưng chỉ có 2 ước nguyên tố khác nhau là 2, 11.

Yêu cầu:

Cho 2 số nguyên dương a,b. Tính tổng các số đặc biệt trong đoạn từ a đến b.

Dữ liệu:

Vào từ tệp CAU3.INP chứa hai số nguyên dương (1 ≤ a < b ≤ 10^7)

Kết quả:

Ghi ra tệp CAU3.OUT một số duy nhất là tổng tìm được.

Ví dụ:

CAU3.INP

88 858

CAU3.OUT

11605
Ràng buộc:
- Có 60% số test ứng với 60% số điểm của bài có 1≤a<b≤10^3;
- Có 20% số test ứng với 20% số điểm của bài có 10^3<a<b≤10^6;
- Có 20% số test ứng với 20% số điểm của bài có 10^6<a<b≤10^7.

Giới hạn thời gian: 0.44s / Giới hạn bộ nhớ: 256M

Điểm: 2

Trên cùng một mặt phẳng toạ độ cho n đường thẳng phân biệt đánh số từ 1 tới n. Đường thẳng i có dạng y=ai*x+bi (1≤i≤n).

Yêu cầu:

Đếm số cặp đường thẳng song song trong n đường thẳng trên.

Dữ liệu:

Vào từ tệp CAU4.INP gồm:

Dòng đầu tiên là số nguyên n (2 ≤ n ≤3×10^6 );
n dòng sau, mỗi dòng ghi 2 số nguyên ai,bi biểu diễn đường thẳng thứ i (|ai|,|bi|≤10^9; 1≤i≤n).
Kết quả:

Ghi ra tệp CAU4.OUT một số nguyên là đáp số của bài.

Ví dụ:

CAU4.INP

3
1 2
1 -2
0 2

CAU4.OUT

1

CAU4.INP

3
1 2
1 -2
1 -4

CAU4.OUT

3
Ràng buộc:
Có 50% số test ứng với 50% số điểm của bài có 2≤n≤10^3;|ai|,|bi|≤10^5;
Có 25% số test ứng với 25% số điểm của bài có 10^3<n≤10^5;|ai|,|bi|≤10^5;
Có 25% số test ứng với 25% số điểm của bài có 10^5<n≤3×10^6;|ai|,|bi|≤10^9.