[Thuật Toán Sinh]. Bài 31. Tổng các tập con

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

Point: 100

Cho mảng A[] gồm N phần tử, bạn hãy liệt kê tất cả các tổng khác nhau của các tập con khác rỗng của mảng A[].

Ví dụ A[] = {1, 2, 3} có thể tạo thành các tổng 1, 2, 3, 4, 5, 6


Đầu vào

Dòng đầu tiên là số N

Dòng 2 gồm N số trong mảng A[]


Giới hạn

1<=N<=20

1<=A[i]<=10^9


Đầu ra

In ra các tổng khác nhau theo thứ tự tăng dần


Ví dụ :

Input 01
3
1 3 5
Output 01
1 3 4 5 6 8 9

[Thuật Toán Sinh]. Bài 32. Cụm từ bí mật passphrase

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

Point: 100

Passphrase là cụm từ bí mật được sử dụng trong các ví tiền điện tử hiện nay, biết được cụm từ bí mật của 1 ví tiền điện tử thì bạn có thể lấy tất cả tiền điện tử trong ví này. Hiện nay có các bạn trẻ Việt Nam bán tool dò Passphrase, họ sẽ sinh ra 12 từ ngẫu nhiên từ 2048 từ trong bộ từ BIP39.

Bây giờ 28tech muốn bạn triển khai 1 tool dò Passphrase, bạn hãy sinh ra tất cả các bộ cụm từ gồm 6 từ ngẫu nhiên từ N từ cho trước. Bạn cần liệt kê các cụm Passphrase theo thứ tự từ điển tăng dần


Đầu vào

Dòng đầu tiên là số N

Dòng 2 gồm N từ trong bộ từ BIP39


Giới hạn

1<=N<=10


Đầu ra

In ra các cụm Passphrase tạo được


Ví dụ :

Input 01
2
badge cart
Output 01
badge badge badge badge badge badge 
badge badge badge badge badge cart 
badge badge badge badge cart badge 
badge badge badge badge cart cart 
badge badge badge cart badge badge 
badge badge badge cart badge cart 
badge badge badge cart cart badge 
badge badge badge cart cart cart 
badge badge cart badge badge badge 
badge badge cart badge badge cart 
badge badge cart badge cart badge 
badge badge cart badge cart cart 
badge badge cart cart badge badge 
badge badge cart cart badge cart 
badge badge cart cart cart badge 
badge badge cart cart cart cart 
badge cart badge badge badge badge 
badge cart badge badge badge cart 
badge cart badge badge cart badge 
badge cart badge badge cart cart 
badge cart badge cart badge badge 
badge cart badge cart badge cart 
badge cart badge cart cart badge 
badge cart badge cart cart cart 
badge cart cart badge badge badge 
badge cart cart badge badge cart 
badge cart cart badge cart badge 
badge cart cart badge cart cart 
badge cart cart cart badge badge 
badge cart cart cart badge cart 
badge cart cart cart cart badge 
badge cart cart cart cart cart 
cart badge badge badge badge badge 
cart badge badge badge badge cart 
cart badge badge badge cart badge 
cart badge badge badge cart cart 
cart badge badge cart badge badge 
cart badge badge cart badge cart 
cart badge badge cart cart badge 
cart badge badge cart cart cart 
cart badge cart badge badge badge 
cart badge cart badge badge cart 
cart badge cart badge cart badge 
cart badge cart badge cart cart 
cart badge cart cart badge badge 
cart badge cart cart badge cart 
cart badge cart cart cart badge 
cart badge cart cart cart cart 
cart cart badge badge badge badge 
cart cart badge badge badge cart 
cart cart badge badge cart badge 
cart cart badge badge cart cart 
cart cart badge cart badge badge 
cart cart badge cart badge cart 
cart cart badge cart cart badge 
cart cart badge cart cart cart 
cart cart cart badge badge badge 
cart cart cart badge badge cart 
cart cart cart badge cart badge 
cart cart cart badge cart cart 
cart cart cart cart badge badge 
cart cart cart cart badge cart 
cart cart cart cart cart badge 
cart cart cart cart cart cart

[Thuật Toán Sinh]. Bài 33. Địa chỉ ví điện tử

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

Point: 100

28tech đang muốn phát triển đồng tiền điện tử là 28coin, anh ta cần tạo ra các địa chỉ ví để gửi và nhận đồng tiền này. Mỗi địa chỉ ví là sự kết hợp của hoán vị các chữ cái từ 'a' tới X với X là chữ cái in thường cho trước với các tổ hợp chập K của N phần tử các số nguyên từ 1 tới N.

Nhiệm vụ của bạn là hãy liệt kê tất cả các địa chỉ có thể có.


Đầu vào

Dòng duy nhất chứa 2 số N, K và kí tự X


Giới hạn

1<=K<=N<=15


Đầu ra

In ra các địa chỉ ví


Ví dụ :

Input 01
5 3 c
Output 01
abc123
abc124
abc125
abc134
abc135
abc145
abc234
abc235
abc245
abc345
acb123
acb124
acb125
acb134
acb135
acb145
acb234
acb235
acb245
acb345
bac123
bac124
bac125
bac134
bac135
bac145
bac234
bac235
bac245
bac345
bca123
bca124
bca125
bca134
bca135
bca145
bca234
bca235
bca245
bca345
cab123
cab124
cab125
cab134
cab135
cab145
cab234
cab235
cab245
cab345
cba123
cba124
cba125
cba134
cba135
cba145
cba234
cba235
cba245
cba345

[Quay Lui - Nhánh Cận]. Bài 26. Binary string

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

Point: 100

Cho một ma trận nhị phân cỡ N x N, bạn xuất phát từ ô (1,1) và tìm đường đi tới ô (N, N). Ở mỗi bước đi bạn được phép đi theo 4 ước trên, dưới, trái, phải của ô hiện tại.

Mỗi lần đi qua một ô bạn sẽ nhặt số 0 hoặc 1 ở ô đó để ghép thành số nhị phân.

Có thể hiểu đơn giản là mỗi đường đi từ ô (1, 1) tới ô (N, N) sẽ tạo ra 1 số nhị phân tương ứng với đường đi đó.

Bạn hãy in ra đường đi có số nhị phân là lớn nhất (dạng thập phân tương ứng của nó là lớn nhất), biết rằng mỗi đường đi bạn chỉ được đi qua mỗi ô 1 lần. Lưu ý rằng các số nhị phân có thể có đường đi với số bit khác nhau.


Đầu vào

• Dòng 1 là số nguyên dương N

N dòng tiếp theo là ma trận


Giới hạn

• 1<=N<=6


Đầu ra

In ra đường đi tương ứng với số nhị phân lớn nhất.


Ví dụ :

Input 01
3
1 1 1 
1 0 0 
1 0 0
Output 01
111001100

[Quay Lui - Nhánh Cận]. Bài 27. N Queen 4

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

Point: 100

Cho bàn cờ vua cỡ NxN, bạn hãy tìm cách đặt N con hậu vào bàn cờ này sao cho không có 2 con hậu ăn nhau.

Giả sử X1, X2, X3…XN là vị trí con hậu đặt ở hàng 1, 2, 3…N.

Bạn hãy liệt kê các cấu hình này theo thứ tự từ điển tăng dần.


Đầu vào

• Dòng duy nhất chứa N


Giới hạn

In ra các cách đặt thỏa mãn


Đầu ra

In ra các cách đặt thỏa mãn


Ví dụ :

Input 01
4
Output 01
2 4 1 3 
3 1 4 2

[Quay Lui - Nhánh Cận]. Bài 28. Partition

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

Point: 100

Cho một số nguyên dương N, bạn hãy liệt kê các cách phân tích N dưới dạng tổng của các số nguyên dương không vượt quá N.

Các cấu hình được liệt kê theo thứ tự từ điển tăng dần.


Đầu vào

• Dòng duy nhất chứa N


Giới hạn

• 1<=N<=16


Đầu ra

In ra các cách phân tích thỏa mãn


Ví dụ :

Input 01
4
Output 01
1 + 1 + 1 + 1
1 + 1 + 2
1 + 2 + 1
1 + 3
2 + 1 + 1
2 + 2
3 + 1
4