Bài 4: Số chính phương nhỏ nhất: Cho một dãy số gồm N số tự nhiên, các phần tử được đánh số từ 1 đến N. Một số tự nhiên được gọi là số chính phương nếu như nó là bình phương của một số tự nhiên khác....

thumb up 0
thumb down
Trả lời câu hỏi của Tùng Thanh

Làm sao để có câu trả lời hay nhất?

  • Luôn có GIẢI THÍCH các bước giải
  • Không copy câu trả lời của Timi
  • Không sao chép trên mạng
  • Không spam câu trả lời để nhận điểm
  • Spam sẽ bị khóa tài khoản
avatar

Tùng Thanh

27/12/2023

lập bằn ngôn ngữ c++ nhé mình đang cần gấp


CÂU TRẢ LỜI
avatar
Timi

27/12/2023

Trợ lý học tập AI - Câu trả lời này chỉ mang tính tham khảo
Để giải bài toán này, ta có thể sử dụng một mảng để đánh dấu các số chính phương đã xuất hiện trong dãy. Ban đầu, ta khởi tạo mảng này với giá trị False. Sau đó, ta duyệt qua từng phần tử trong dãy và đánh dấu các số chính phương đã xuất hiện bằng cách gán giá trị True cho vị trí tương ứng trong mảng. Cuối cùng, ta duyệt qua mảng để tìm số chính phương nhỏ nhất không xuất hiện, và trả về kết quả. Dưới đây là đoạn code giải bài toán: ```python def tim_so_chinh_phuong_nho_nhat(N, arr): max_num = max(arr) # Tìm số lớn nhất trong dãy square_nums = [False] * (max_num + 1) # Khởi tạo mảng đánh dấu for num in arr: if num >= 0: # Chỉ xét các số không âm square_nums[num] = True # Đánh dấu số chính phương đã xuất hiện for i in range(0, max_num + 2): if not square_nums[i]: # Tìm số chính phương nhỏ nhất không xuất hiện return i # Test đoạn code với input mẫu N = 5 arr = [1, 2, 3, 4, 5] result = tim_so_chinh_phuong_nho_nhat(N, arr) print(result) # Kết quả: 9 N = 6 arr = [2, 5, 3, 9, 11, 6] result = tim_so_chinh_phuong_nho_nhat(N, arr) print(result) # Kết quả: 1 ``` Với input mẫu, kết quả là 9 và 1 tương ứng.
Hãy giúp mọi người biết câu trả lời này thế nào?
0/5 (0 đánh giá)
thumb up 0
thumb down
0 bình luận
Bình luận
avatar
level icon
thonguyen

28/12/2023

đợi t nhé 

Hãy giúp mọi người biết câu trả lời này thế nào?
0/5 (0 đánh giá)
thumb up 0
thumb down
0 bình luận
Bình luận

Tùng Thanh```python

def tim_so_chinh_phuong_nho_nhat(N, arr):

max_num = max(arr) # Tìm số lớn nhất trong dãy

square_nums = [False] * (max_num + 1) # Khởi tạo mảng đánh dấu


for num in arr:

if num >= 0: # Chỉ xét các số không âm

square_nums[num] = True # Đánh dấu số chính phương đã xuất hiện


for i in range(0, max_num + 2):

if not square_nums[i]: # Tìm số chính phương nhỏ nhất không xuất hiện

return i


# Test đoạn code với input mẫu

N = 5

arr = [1, 2, 3, 4, 5]

result = tim_so_chinh_phuong_nho_nhat(N, arr)

print(result) # Kết quả: 9


N = 6

arr = [2, 5, 3, 9, 11, 6]

result = tim_so_chinh_phuong_nho_nhat(N, arr)

print(result) # Kết quả: 1

```


Với input mẫu, kết quả là 9 và 1 tương ứng.

Hãy giúp mọi người biết câu trả lời này thế nào?
0/5 (0 đánh giá)
thumb up 2
thumb down
1 bình luận
Bình luận
avatar

Tùng Thanh

27/12/2023

cục cức nhỏ bạn lập hộ mình bằng c++ được không


Nếu bạn muốn hỏi bài tập

Các câu hỏi của bạn luôn được giải đáp dưới 10 phút

Ảnh ads

CÂU HỎI LIÊN QUAN

các ido ơi giúp em bài này vs
Viết chương trình tìm bội số chung nhỏ nhất của hai số nguyên dương a và b nhập vào từ bàn phím.( 0 <= a,b <= 10^18 ) Dữ liệu đảm bảo LCM(a,b) là số nguyên <= 10^18 Ngôn ngữ: C++ Ví dụ: Input Output...
Cho một mảng gồm 𝑛 n số nguyên, nhiệm vụ của bạn là tìm tổng giá trị tối đa của một đoạn con khác rỗng. Input Dòng đầu vào đầu tiên có một số nguyên 𝑛 n: kích thước của mảng. Dòng thứ hai có n số...
avatar
level icon
Yuan

01/09/2024

Câu 6. Trong dải lệnh Home, nhóm lệnh nào gồm các lệnh dùng để tạo cấu trúc phân cấp trong trình bài trình chiếu? A. Style B. Font C. Paragraph D. Editing
avatar
level icon
Yuan

01/09/2024

Câu 5. Phát biểu nào dưới đây đúng nhất? A. Chỉ có thể sao chép hàm bằng cách sử dụng các lệnh Copy, Paste. B. Chỉ có thể sao chép hàm bằng cách sử dụng chức năng tự động điền dữ liệu (Autofill). C....
Đặt câu hỏi về bài tập của bạn
Lưu ý: • Đặt câu hỏi đủ thông tin, có ý nghĩa • Không gian lận điểm • Không đặt câu hỏi có chứa nội dung phản cảm
Báo cáo câu hỏi
    Xác nhận
    FQA.vn Nền tảng kết nối cộng đồng hỗ trợ giải bài tập học sinh trong khối K12. Sản phẩm được phát triển bởi CÔNG TY TNHH CÔNG NGHỆ GIA ĐÌNH (FTECH CO., LTD)
    Điện thoại: 1900636019 Email: info@fqa.vn
    Location Địa chỉ: Số 21 Ngõ Giếng, Phố Đông Các, Phường Ô Chợ Dừa, Quận Đống Đa, Thành phố Hà Nội, Việt Nam.
    Tải ứng dụng FQA
    Người chịu trách nhiệm quản lý nội dung: Nguyễn Tuấn Quang Giấy phép thiết lập MXH số 07/GP-BTTTT do Bộ Thông tin và Truyền thông cấp ngày 05/01/2024
    Copyright © 2023 fqa.vn All Rights Reserved