Link bài: Thuật toán: Ta dùng quay lui để gọi ra hết các trường hợp có thể xảy ra của chuỗi nhị phân rồi in ra. Code: Mã: #include<bits/stdc++.h> using namespace std; int i, n; int a[1000]; void viet(){ for (int i = 1; i <= n; i++){ cout << a; } cout << endl; } void doing(int i){ for (int j = 0; j <= 1; j++){ a = j; if (i == n){ viet(); } else doing(i + 1); } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); //freopen("binas.inp", "r", stdin); //freopen("binas.out", "w", stdout); cin >> n; doing(1); return 0; }