Xin chào, tôi có List<decimal>
chứa các giá trị giữa] 0; 1]. Tôi muốn kiểm tra xem tổng (hoặc tổng phụ) của các giá trị này có bằng 1 (hoặc gần như không).Xác minh xem danh sách (hoặc danh sách con của danh sách đó) có giá trị thập phân có thể bằng một số tiền nhất định không.
Tôi cũng có thể sử dụng các chức năng Linq
để lọc hoặc thao tác danh sách.
kết quả mong muốn:
- Một danh sách có chứa {0,7, 0,7, 0,7} nên return false;
- Danh sách chứa {0,7, 0,3, 0,7} phải trả về giá trị đúng;
- Danh sách chứa {0,777777, 0,2, 0,1} phải trả về false;
- Danh sách chứa {0.33333, 0.33333, 0.33333} phải trả về true;
- Danh sách chứa {0,4, 0,5, 0,6, 0,3} phải trả về giá trị đúng.
Rõ ràng, tôi sẽ muốn thứ gì đó có chi phí hiệu suất thấp nhất có thể.
Điều này có thể được giải quyết tốt nhất bởi một [luồng trên mạng] (http://en.wikipedia.org/wiki/Flow_network) – NominSim
Cảm ơn bạn NominSim nhưng, không một thuật toán đơn giản tồn tại? –
Để lực lượng vũ phu, bạn sẽ cần tất cả hoán vị tổng hợp, trong đó sẽ có N! Nó sẽ tốn kém một cách nhanh chóng mà không có một cái gì đó một chút ưa thích hơn tôi nghĩ. –