Tập Con Ký Tự (thuật toán sinh)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 3

Cho một xâu ký tự S (các ký tự khác nhau). In ra tất cả các tập con của các ký tự trong S (không tính tập rỗng), xếp theo thứ tự từ điển.

Dữ liệu vào:

Xâu S.

Dữ liệu ra:

Các tập con.

Giới hạn:

Độ dài S <= 15

Ví dụ:

Input:
abc
Output:
a 
ab 
abc 
ac 
b 
bc 
c

Hái nấm (easy)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 4

Bác Mario đang đứng ở ô (1, 1) của một khu rừng hình chữ nhật kích thước N x M. Tại mỗi ô (i, j) có một số lượng nấm là A[i][j]. Bác Mario chỉ có thể di chuyển sang phải (từ ô (i, j) sang (i, j+1)) hoặc đi xuống dưới (từ ô (i, j) sang (i+1, j)). Hãy tìm đường đi từ ô (1, 1) đến ô (N, M) sao cho tổng số nấm thu được là lớn nhất.

Dữ liệu vào:

Dòng 1: Hai số nguyên N, M (1 <= N, M <= 1000).

N dòng tiếp theo, mỗi dòng chứa M số nguyên dương A[i][j] (0 <= A[i][j] <= 1000).

Dữ liệu ra:

Một số nguyên duy nhất là tổng số nấm lớn nhất thu được.

Ví dụ:

Input:
3 3 
1 2 3 
4 8 2 
1 5 3
Output:
21

Lắp ráp Robot

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 3

Để lắp ráp 1 con robot cần N loại linh kiện, loại thứ i cần A[i] cái. Trong kho đang có sẵn B[i] cái loại i. Bạn có thể mua thêm linh kiện với giá 1 đồng/cái. Bạn có K đồng. Hỏi có thể lắp ráp tối đa bao nhiêu con robot?

Dữ liệu vào:

Dòng 1: N và K.

Dòng 2: Mảng A (nhu cầu).

Dòng 3: Mảng B (có sẵn).

Dữ liệu ra:

Số robot tối đa.

Ràng buộc:

1 <= N <= 100

1 <= K <= 10^12

Ví dụ:

Input:
3 10 
2 3 1 
10 10 10
Output:
6

Giải thích: Với K = 10 sẽ lắp tối đa được 6 con robot