You are on page 1of 3

HOẠT CHẤT

Nhà máy hạt nhân vừa nhập lô hàng hóa chất. Hóa chất gồm các nguyên
tố C, H, O có khối lượng nguyên tử là 12, 1, 16. Nó được biểu diễn dưới dạng
nén, ví dụ COOHHH là CO2H3 hay CH(CO2H) (CO2H) (CO2H) là
CH(CO2H)3. Nếu ở dạng nén thì số lần lặp trong phạm vi từ 2 đến 9.
Yêu cầu: Tính tổng khối lượng phân tử của hóa chất.
Dữ liệu: HOACHAT.INP
Một dòng mô tả hóa chất có độ dài không quá 106 chỉ gồm các ký tự C, H,
O, (, ), 2, …, 9.
Kết quả: HOACHAT.OUT
Đáp số.
Ví dụ:

HOACHAT.INP HOACHAT.OUT

COOH 45

CH(CO2H)3 148

((CH)2(OH2H)(C(H))O)3 222

Xóa số

Cho dãy số nguyên A=( a ¿ ¿ 1, a 2 , … , an )¿ . Người ta tìm chỉ số i (1<i<n) nhỏ


nhất thỏa mãn điều kiện a i< ai−1 và a i<ai+1 rồi xóa số i khỏi dãy. Sau khi xóa, số
phần tử trong dãy A giảm đi 1 và các phần tử còn lại của dãy được đánh chỉ số
lại bắt đầu từ a 1 . Công việc này lặp lại cho đến khi không tìm được chỉ số i thỏa
mãn điều kiện trên.
Yêu cầu: Cho biết số phần tử còn lại trong dãy.
Dữ liệu vào: DELNUM.INP
- Dòng đầu chứa số nguyên dươg n (n ≤ 106 )
- Dòng 2 chứa n số nguyên a 1 , a2 , … , an ( ∀ i :|ai|≤ 10 )
6

Dữ liệu ra: DELNUM.OUT


Ghi một số nguyên duy nhất là số lượng phần tử còn lại trong dãy.
Ví dụ:
DELNUM.INP DELNUM.OUT

6 3
3 1 2 4 0 1

Rút gọn

Cho dãy số nguyên a1, a2, . . ., an (0 ≤ ai ≤ 109, 1 ≤ n ≤ 106). Với dãy số


nguyên này ta có thể thực hiện phép xử lý Reduce(i) thay thế 2 phần tử ai
và ai+1 bằng max{ai, ai+1} với chi phí là max{ai, ai+1}. Sau n-1 lần thực hiện
phép xử lý trên, ta được dãy số độ dài 1. Chi phí biến đổi dãy được tính bằng
tổng chi phí của tất cả các phép xử lý đã thực hiện.
Yêu cầu: Cho n và các số ai. Hãy xác định chi phí nhỏ nhất đưa dãy về
độ dài bằng 1.
Dữ liệu: Vào từ file văn bản COST.INP:
 Dòng đầu tiên chứa số nguyên n,
 Dòng thứ i trong n dòng tiếp theo chứa số nguyên ai.

Kết quả: Đưa ra file văn bản COST.OUT một số nguyên – chi phí biến
đổi tìm được.

Ví dụ:
COST.INP COST.OUT
3 5

1
2
3

Hình chữ nhật 0 1 (vn.spoj.com/problems/QBRECT)


Cho một bảng kích thước MxN, được chia thành lưới ô vuông đơn vị M
dòng N cột ( 1 ≤ M , N ≤ 1000 ) . Trên các ô của bảng ghi số 0 hoặc 1. Các dòng của
bảng được đánh số 1, 2... M theo thứ tự từ trên xuống dưới và các cột của bảng
được đánh số 1, 2..., N theo thứ tự từ trái qua phải
Yêu cầu: Hãy tìm một hình chữ nhật gồm các ô của bảng thoả mãn các
điều kiện sau:
 Hình chữ nhật đó chỉ gồm các số 1
 Cạnh hình chữ nhật song song với cạnh bảng
 Diện tích hình chữ nhật là lớn nhất có thể
Input: QBRECT.INP
- Dòng 1: Ghi hai số M, N
- M dòng tiếp theo, dòng thứ i ghi N số mà số thứ j là số ghi trên ô
(i, j) của bảng
Output: QBRECT.OUT
Gồm 1 dòng duy nhất ghi diện tích của hình chữ nhật tìm được
Ví dụ:

QBRECT.INP QBRECT.OUT

11 13 49
0000010000000
0000111000000
0011111110000
0011111110000
0111111111000
1111111111100
0111111111000
0011111110000
0011111110000
0000111000011
0000010000011

You might also like