[C++ Quay Lui] Liệt Kê Hoán Vị Các Số Từ 1 đến N

  • Bài viết
  • Hỏi đáp
Tạo bài viết Đăng ký Đăng nhập Code24h.com Blog 02/10/2018, 15:06 [C++ Quay lui] Liệt kê hoán vị các số từ 1 đến n

Cho một tập hợp gồm n phần tử có giá trị từ 1 đến n. Yêu cầu xuất ra các hoán vị của tập hợp này theo thứ tự tăng dần. Dữ liệu đầu vào: số nguyên dương n (n<10) Dữ liệu đầu ra: gồm n! dòng ghi các hoán vị theo thứ tự tăng dần, mỗi phần tử của tập hợp ngăn cách nhau bởi khoảng ...

Cho một tập hợp gồm n phần tử có giá trị từ 1 đến n. Yêu cầu xuất ra các hoán vị của tập hợp này theo thứ tự tăng dần.

Dữ liệu đầu vào: số nguyên dương n (n<10) Dữ liệu đầu ra: gồm n! dòng ghi các hoán vị theo thứ tự tăng dần, mỗi phần tử của tập hợp ngăn cách nhau bởi khoảng trắng.

Ví dụ:Input: 3Output: 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1

Code tham khảo

#include <iostream> using namespace std; int n, kq[11], dd[10]; void xuat() { for (int j=1; j<=n; j++) cout<< kq[j]<<" "; cout << endl; } void backtrack(int i) { if (i>n) xuat(); for (int j=1; j<=n; j++) if (dd[j]==0) { dd[j]=1; kq[i]=j; backtrack(i+1); dd[j]=0; } } int main() { cin >> n; for (int i=1; i<=9; i++) dd[i]=0; backtrack(1); }
1234567891011121314151617181920212223242526272829303132#include <iostream>using namespacestd; intn,kq[11],dd[10]; voidxuat(){for(intj=1;j<=n;j++)cout<<kq[j]<<" ";cout<<endl;} voidbacktrack(inti){if(i>n)xuat();for(intj=1;j<=n;j++)if(dd[j]==0){dd[j]=1;kq[i]=j;backtrack(i+1);dd[j]=0;}} intmain(){cin>>n;for(inti=1;i<=9;i++)dd[i]=0;backtrack(1);}
Bình luận về bài viết này

Hoàng Hải Đăng

24 chủ đề

7226 bài viết

Có thể bạn quan tâm
  • 1 ACM2016_North_G – Optimal division (ACM 2016 Miền Bắc)
  • 2 [Codeforces] 750A – New Year and Hurry
  • 3 [Upcoder BFS] r2.b3.Hereditament – Hereditament
  • 4 PTIT138C – BÀI C – SỐ THUẬN NGHỊCH
  • 5 Ứng dụng nhân ma trận vào tính số Fibonacci lớn
  • 6 [UpCoder] LOGIN_UP2 – Xác nhận Upcoder 2
  • 7 Bài 5: Thuật toán tìm kiếm theo chiều rộng BFS pascal c++
  • 8 PTIT127A spoj PTIT – Tổ chức kì thi
  • 9 Cây khung nhỏ nhất QBMST spoj: Kruskal, Prim heap
  • 10 PTIT016D spoj PTIT- ACM PTIT 2016 D – Biểu thức
0 Các chủ đề đang được quan tâm phần mềm lập trình php | lập trình web php + mysql | khóa học lập trình php | tự học lập trình php | học php cơ bản thachpham | Code24h | Cho thuê phòng trọ hà nội | Cho thuê phòng trọ bình thạnh | Cho thuê phòng trọ | Cho thuê nhà trọ Đăng ký

Đăng ký nhận thông báo

Các bài học thú vị sẽ được gửi đến inbox của bạn

HỖ TRỢ HỌC VIÊN
  • Các câu hỏi thường gặp
  • Điều khoản sử dụng
  • Chính sách và quy định
  • Chính sách bảo mật thanh toán
  • Hỗ trợ học viên: hotro@code24h.com
  • Báo lỗi bảo mật: security@code24h.com
VỀ CODE24H
  • Giới thiệu Code24h
  • Cơ hội nghề nghiệp
  • Liên hệ với chúng tôi
HỢP TÁC VÀ LIÊN KẾT
  • Đăng ký giảng viên
  • Giải pháp e-learning
  • Chương trình đại lý
  • Chương trình Affiliate
KẾT NỐI VỚI CHÚNG TÔI
TẢI ỨNG DỤNG TRÊN ĐIỆN THOẠI

CCode 24h, code mọi lúc, mọi nơi

© Copy right 2018 - 2025

Từ khóa » Thuật Toán Liệt Kê Hoán Vị