cuốn sách gpt4 ai đã làm

Cho một từ điển gồm các từ và một mảng các chữ cái, hãy tìm số từ điển tối đa có thể được tạo bằng các chữ cái này

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 03:55:13 25 4
mua khóa gpt4 Nike

Mỗi chữ cái chỉ có thể được sử dụng một lần. Có thể có nhiều hơn một trường hợp của cùng một chữ cái trong mảng.

Chúng ta có thể giả định rằng mọi từ trong từ điển đều có thể được đánh vần bằng các chữ cái. Mục tiêu là trả về số lượng từ tối đa.

Ví dụ 1:

mảng = ['a', 'b', 'z', 'z', 'z', 'z']
dict = ['ab', 'azz', 'bzz']
// trả về 2 (cho [ 'azz', 'bzz'])

Ví dụ 2:

mảng = ['g', 't', 'o', 'g', 'w', 'r', 'd', 'e', ​​'a', 'b']
dict = ['chúng tôi', 'túi', 'có', 'từ']
// trả về 3 ( for ['we', 'bag', 'got'] )

biên tậpĐể tuân thủ rõ ràng các nguyên tắc SO:

Tìm giải pháp. Tôi đã gặp phải vấn đề này trong một cuộc phỏng vấn. Giải pháp của tôi như sau nhưng bị từ chối vì quá chậm.

1.) Đối với mỗi từ trong dict, w
- Xóa các chữ cái w khỏi mảng.
- Với các chữ cái còn lại, hãy đếm xem có thể viết được bao nhiêu từ khác.
Đặt # đó làm "điểm" của w
2.) Với mỗi từ "được tính điểm", hãy chọn từ có số điểm cao nhất,
xóa từ đó và các chữ cái của nó khỏi mảng đầu vào.
3.) Lặp lại quá trình này cho đến khi không còn từ nào có thể được đánh vần từ những từ còn lại
bộ chữ cái.

câu trả lời hay nhất

Đây là vấn đề đóng gói khá chung chung, chứa tới 26 tài nguyên. Nếu tôi đang cố gắng giải quyết vấn đề này trong thực tế, tôi sẽ xây dựng nó dưới dạng một chương trình số nguyên và áp dụng một bộ giải chương trình số nguyên. Đây là một công thức ví dụ cho một trường hợp cụ thể:

tối đa hóa x_ab + x_azz + x_bzz
tùy thuộc vào
ràng buộc a: x_ab + x_azz <= 1
ràng buộc b: x_ab + x_bzz <= 1
ràng buộc z: 2 x_azz + 2 x_bzz <= 4
x_ab, x_azz, x_bzz trong {0, 1} (hoặc số nguyên >= 0 tùy thuộc vào biến thể chính xác)

Người giải sẽ giải quyết sự giãn tuyến tính của chương trình và trong quá trình xử lý, hãy định giá từng chữ cái cho biết mức độ hữu ích của từ đó, điều này sẽ khiến người giải nhanh chóng tìm ra giải pháp tối ưu có thể chứng minh được (mặc dù đây là kích thước tùy ý. Bảng chữ cái là NP- cứng, vì vậy đừng mong đợi quá nhiều từ các ví dụ nhân tạo, chẳng hạn như những ví dụ được tạo ra bằng cách giảm độ cứng NP).

Tôi không biết người phỏng vấn của bạn đang tìm kiếm điều gì - có thể là một chương trình động có trạng thái là nhiều bộ chữ cái không được sử dụng.

Về thuật toán - đưa ra một từ điển các từ và một mảng các chữ cái, hãy tìm số từ điển tối đa có thể được tạo bằng các chữ cái đó, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/50709673/

25 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress