Bài tập và thực hành 4DỮ LIỆU KIỂU DANH SÁCH tiếp... Nhập vào số nguyên dương n... Bài 3Nhập vào số nguyên dương n... Bài 4Viết chương trình nhập số nguyên dương n, số nguyên dương v n..
Trang 1Bài tập và thực hành 4
DỮ LIỆU KIỂU DANH SÁCH (tiếp)
Trang 4Nhập vào số nguyên dương n <= 105 và dãy các số nguyên dương a1, a2, …, an.
a) Đếm số lượng các số nguyên tố trong dãy trên có sử
dụng hàm kiểm tra một số là số nguyên tố b) Tìm ước chung lớn nhất của a1, a2, …, an.
Bài 2
Trang 6Bài 3
Nhập vào số nguyên dương n <= 1018, chuyển đổi số nguyên dương n sang hệ nhị phân có sử dụng mảng
Trang 8Bài 4
Viết chương trình nhập số nguyên dương n, số nguyên dương v (n
<= 105, v ≠ 0) và dãy các số nguyên A = {a1, a2, …, an} Cho biết
v có xuất hiện trong dãy A không? Nếu có cho biết vị trí xuất hiện đầu tiên của v trong A
Trang 10Bài 5
Cho dãy A = {a0, a1, …, an}và số nguyên i (n <= 105, 0 ≤ i
≤ n) Tìm cách xóa các phần tử ai sao cho dãy số sau khi xóa các phần tử còn lại vẫn giữ nguyên thứ tự
Trang 13Bài 6
Cho dãy số nguyên A = {a0, a1, …, an}và chỉ số i, giá trị v (n <=
105, 0 ≤ i ≤ n) Tìm cách chèn phần tử v vào trước ai sao cho vẫn giữ nguyên thứ tự các phần tử còn lại
Trang 15Bài 7
Cho mảng A gồm các số nguyên a0, a1, …, an (n <= 1000) Hãy sắp xếp lại mảng A sao cho a0 ≤ a1 ≤ … ≤ an
Trang 16Cách 1: Dùng lệnh sắp xếp sẵn có của danh sách
Trang 17Cách 2: Dùng thuật toán sắp xếp
Trang 18Bài 8
Nhập vào dãy số nguyên A gồm các phần tử a1, a2, …, an (n <= 1000) Hãy tìm đoạn con đan dấu dài nhất
Trang 20Bài 9
Cho số nguyên dương n ≤ 109 Phân tích n thành tổng các số Fibonacci khác nhau
Trang 21Lưu ý: bài có nhiều kết quả phân tích khác nhau, không nhất thiết giống test
Cách làm này ra nhiều
số fibonacci
=> Muốn ra ít số Fibonacci nhất làm như nào?