khoahoc.vietjack.com
Xin chào! Vào học

Câu hỏi:

03/07/2023 392 Lưu

Em hãy lập trình, nhập vào một từ gồm các chữ cái khác nhau, liệt kê ra tất cả các hoán vị của các chữ cái đó. Chạy thử nghiệm với các bộ dữ liệu ở Bảng 1.

Quảng cáo

Trả lời:

verified Giải bởi Vietjack

#define MAX 20

using namespace std;

int n;

int Bool[MAX] = { 0 };//Đánh dấu chưa có phần tử nào sử dụng hết

int A[MAX];//Lưu hoán vị vào mảng A

void xuat() {

 for (int i = 1; i <= n; i++)

 cout << A[i] << " ";

 cout << endl;

}

void Try(int k) {

 for (int i = 1; i <= n; i++) {

 //Kiểm tra nếu phần tử chưa được chọn thì sẽ đánh dấu

 if (!Bool[i]) {

 A[k] = i; // Lưu một phần tử vào hoán vị

 Bool[i] = 1;//Đánh dấu đã dùng

 if (k == n)//Kiểm tra nếu đã chứa một hoán vị thì xuất

 xuat();

 else

 Try(k + 1);

 Bool[i] = 0;

 }

 }

}

int main() {

 cout << "Mhap n: ";

 cin >> n;

 Try(1);

}

Dành cho bạn Hot

Lớp 11 Vật lý
197 người thi tuần này

Trắc nghiệm Mô tả sóng lớp 11 (có đáp án)

10 câu 6.3 K lượt thi Thi ngay →
Lớp 11 Hóa học
348 người thi tuần này

Trắc nghiệm Khái niệm về cân bằng hoá học lớp 11 (có đáp án - phần 1)

15 câu 10.2 K lượt thi Thi ngay →
Lớp 11 Tiếng Anh
142 người thi tuần này

Đề cương ôn tập giữa kì 1 Tiếng Anh 11 Global Success có đáp án

50 câu 1.2 K lượt thi Thi ngay →
Lớp 11 Sinh học
154 người thi tuần này

15 câu Trắc nghiệm Sinh học 11 Kết nối tri thức Bài 8 có đáp án

15 câu 3.2 K lượt thi Thi ngay →
Lớp 11 Lịch sử
1,460 người thi tuần này

25 câu Trắc nghiệm Lịch Sử 11 Kết nối tri thức Bài 1 có đáp án

25 câu 20.4 K lượt thi Thi ngay →
Lớp 11 Tin học
849 người thi tuần này

15 câu Trắc nghiệm Tin học 11 Kết nối tri thức Bài 1 có đáp án

15 câu 9.8 K lượt thi Thi ngay →
Lớp 11 Giáo dục Kinh tế và Pháp luật
166 người thi tuần này

16 câu Trắc nghiệm Kinh tế pháp luật 11 Kết nối tri thức Bài 2 có đáp án

16 câu 3.9 K lượt thi Thi ngay →

CÂU HỎI HOT CÙNG CHỦ ĐỀ