wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

TOÁN RỜI RẠC - BÀI 4

Total questions: 30

Worksheet time: 19mins

Name
Class
Date
1.

Một lớp học có 10 học sinh nam và 15 học sinh nữ. Hỏi có bao nhiêu cách chọn một học sinh từ lớp học này?

a)

25

b)

20

c)

10

d)

15

2.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n2 + m)

b)

O(n2)

c)

O(n + m)

d)

O(n * m)

3.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n2)

b)

O(m2)

c)

O(n * m)

d)

O(n + m)

4.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n3)

b)

O(n2)

c)

O(n)

d)

O(n log n)

5.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n/m)

b)

O(max(n, m))

c)

O(min(n, m))

d)

O(n * m)

6.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n)

b)

O(n2)

c)

O(n3)

d)

O(n log n)

7.

Cho đoạn mã sau: Độ phức tạp thời gian của đoạn mã này là gì?

a)

O(n1/n2)

b)

O(min(n1,n2))

c)

O(n1 * n2)

d)

O(n1 + n2)

8-9.

Trường học có 100 học sinh. Trong đó, có 50 học sinh biết lập trình Python, 30 học sinh biết lập trình Java và 10 học sinh biết lập trình cả hai ngôn ngữ.

8.

Có bao nhiêu học sinh trong trường biết lập trình ít nhất một ngôn ngữ?

(a)  

9.

Có bao nhiêu học sinh không biết lập trình Python và cũng không biết lập trình Java?

(a)  

10.

Trong một cuộc khảo sát, có 100 người thích trà, 80 người thích cả phê và 40 người thích cả hai. Hỏi có bao nhiêu người thích ít nhất một trong hai loại đồ uống này?

a)

120

b)

140

c)

160

d)

100

11.

Một trường đại học có 400 sinh viên biết tiếng Anh, 300 sinh viên biết tiếng Pháp và 100 sinh viên biết cả hai ngôn ngữ. Hỏi có bao nhiêu sinh viên biết ít nhất một ngôn ngữ?

a)

700

b)

500

c)

400

d)

600

12.

Thuật toán sinh được sử dụng để làm gì?

a)

Để nhân đôi kích thước của một mảng

b)

Để tìm kiếm phần tử trong mảng đã sắp xếp

c)

Để sắp xếp một danh sách các số

d)

Để liệt kê tất cả các hoán vị của một tập hợp

13.

Thuật toán sinh tổ hợp k phần tử từ n phần tử (1 ≤ k ≤ n) là gì?

a)

Sinh tất cả các số nguyên tố nhỏ hơn n

b)

Sinh tất cả các hoán vị của n phần tử

c)

Sinh tất cả các tập con có k phần tử từ n phần tử

d)

Sinh tất cả các dãy con liên tiếp từ một dãy có n phần tử

14.

Thuật toán sinh dãy nhị phân độ dài n có độ phức tạp thời gian là bao nhiêu?

a)

O(n)

b)

O(n!)

c)

O(2n)

d)

O(n log n)

15.

Thuật toán nào sau đây có thể được sử dụng để sinh tất cả các hoán vị của một tập hợp n phần tử?

a)

Thuật toán Binary Search

b)

Thuật toán Bubble Sort

c)

Thuật toán quay lui (Backtracking)

d)

Thuật toán Quicksort

16.

Thuật toán quay lui thường được sử dụng để giải quyết loại bài toán nào?

a)

Sắp xếp một danh sách các số

b)

Tính toán giá trị của một hàm toán học

c)

Tạo ra tất cả các tổ hợp hoặc hoán vị thỏa mãn một điều kiện nào đó

d)

Tìm kiếm tuần tự trong một danh sách

17.

Trong bài toán "N‑Queens", thuật toán quay lui được sử dụng để làm gì?

a)

Sắp xếp các quân hậu theo thứ tự từ nhỏ đến lớn

b)

Tìm đường đi ngắn nhất trên bàn cờ

c)

Tìm tổng số quân hậu có thể đặt trên bàn cờ

d)

Tìm tất cả các cách sắp xếp N quân hậu trên bàn cờ N x N sao cho không quân hậu nào tấn công nhau

18.

Thuật toán quay lui có thể được sử dụng để giải bài toán nào sau đây?

a)

Sắp xếp nhanh (Quicksort)

b)

Tìm kiếm nhị phân

c)

Giải câu đố Sudoku

d)

Tính tích các phần tử trong mảng

19.

Trong thuật toán quay lui liệt kê dãy nhị phân, khi nào thì thuật toán sẽ quay lui (backtrack)?

a)

Khi tìm được hai dãy nhị phân

b)

Khi chưa tìm thấy một lời giải

c)

Khi đã tìm thấy một lời giải có bit 1 đứng đầu

d)

Khi đã tìm thấy một lời giải hoặc khi gặp phải một bước không thể tiếp tục đi sâu thêm

20.

Trong bài toán tìm đường đi mê cung, thuật toán quay lui hoạt động như thế nào?

a)

Tính tổng số bước đi cần thiết để đi từ điểm bắt đầu đến điểm kết thúc

b)

Thử tất cả các bước đi có thể từ điểm hiện tại và quay lui nếu gặp ngõ cụt

c)

Tìm đường đi ngắn nhất từ điểm bắt đầu đến điểm kết thúc

d)

Tìm tất cả các đường đi có thể từ điểm bắt đầu đến điểm kết thúc

21.

Khi giải bài toán phân chia tập hợp thành hai phần có tổng bằng nhau bằng thuật toán quay lui, thuật toán sẽ làm gì?

a)

Tìm tất cả các cách chia tập hợp thành hai phần bất kỳ

b)

Tính tổng của tập hợp và chia đôi kết quả để tìm hai phần

c)

Chọn lần lượt từng phần tử và thử đặt nó vào một trong hai phần, quay lui nếu không thành công

d)

Sắp xếp tập hợp theo thứ tự tăng dần và sau đó chia đôi

22.

Khi giải bài toán phân chia tập hợp thành hai phần có tổng bằng nhau bằng thuật toán quay lui, thuật toán sẽ làm gì?

a)

Tìm tất cả các cách chia tập hợp thành hai phần bất kỳ

b)

Tính tổng của tập hợp và chia đôi kết quả để tìm hai phần

c)

Chọn lần lượt từng phần tử và thử đặt nó vào một trong hai phần, quay lui nếu không thành công

d)

Sắp xếp tập hợp theo thứ tự tăng dần và sau đó chia đôi

23.

Cho tập A = {0, 1, 2, 3}. Có bao nhiêu số chẵn, mỗi số gồm 3 chữ số khác nhau được thành lập từ A?

a)

8

b)

12

c)

6

d)

10

24.

Cho thuật toán sau:

Hãy cho biết thuật toán trên có chức năng làm gì?

a)

Liệt kê các chỉnh hợp chập K của N

b)

Liệt kê các tổ hợp chập K của N

c)

Liệt kê các hoán vị của tập gồm N phần tử

d)

Liệt kê các chỉnh hợp lặp chập K của N

25.

Cho chương trình sau:

Hãy cho viết trong thủ tục để quy thực hiện thuật toán quay lui, việc kiểm tra điều kiện chấp nhận phương án để cử cho cấu hình bộ phận thứ i thể hiện dòng lệnh thứ bao nhiêu?

a)

21

b)

Không có lệnh kiểm tra điều kiện chấp nhận

c)

25

d)

22

26.

Hãy cho biết, trong các đặc điểm sau, đặc điểm nào là thế mạnh của thuật toán quy lui so với thuật toán sinh?

a)

Trong quá trình thử các cấu hình, thuật toán tránh được phải thử nhiều trường hợp chưa hoàn chỉnh, điều này làm giảm thời gian thực hiện thuật toán

b)

Chi phí không gian lưu trữ thấp

c)

Dễ cài đặt

d)

Độ chính xác cao

27.

Cho tập A = {0,2,4,6,8}. Có bao nhiêu số gồm 4 chữ số khác nhau được thành lập từ A?

a)

5

b)

96

c)

120

d)

24

28.

Hỏi trong tập X = {1, 2, ..., 1000} có bao nhiêu số không chia hết cho bất cứ số nào trong các số 3, 4, 7?

a)

429

b)

571

c)

725

d)

165

29.

Hỏi trong tập X = {1, 2, ..., 10000} có bao nhiêu số chia hết cho một trong các số 2, 5, 9?

a)

6445

b)

8111

c)

1777

d)

3555

30.

Cho thuật toán sau:

Hãy cho biết, thuật toán có chức năng làm gì?

a)

Liệt kê các tổ hợp của tập B

b)

Đếm số hoán vị gồm N phần tử lấy từ tập B

c)

Liệt kê chỉnh hợp

d)

Liệt kê các hoán vị của tập B

31.
a)

01111110

b)

11111111

c)

10000001

d)

10000000