Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Bài toán có n con cá,khối lượng a[i],có thể mua được những khối lượng cá nào

  1. #1
    Ngày gia nhập
    10 2010
    Bài viết
    14

    Angry Bài toán có n con cá,khối lượng a[i],có thể mua được những khối lượng cá nào

    Mình đang học môn Cơ sở lập trình về thuật toán và đệ quy,nhưng không hiểu cho lắm. Mình có 1 bài tập:
    -Một người bán cá có n con cá, mỗi con cá có khối lượng a[i]. Người ta không mua cá theo con, mà mua theo một lượng nào đó.
    Ví dụ: Có 3 con cá, khối lượng lần lượt là: 3kg, 2kg, 4kg. Mua 6kg sẽ phải lấy con cá thứ 2 và thứ 3. Mua 3kg sẽ lấy con cá thứ nhất. Không thể mua 8kg

    Nếu là người mua đầu tiên, hỏi có thể mua được những khối lượng cá nào ?
    Bạn nào có ý tưởng nào về bài toán này xin chia sẻ với. Nếu được bạn có thể chỉ mình cách phân tích bài toán này để ra thuật giải được không, chứ đọc cái đề vào là mình mù tịt, chả biết phải làm sao nữa

    Mém xỉu,bài này Mod chuyển sang box nhập môn lập trình thôi á?? Vậy là mình nhập môn cũng chưa qua được, bùn ghê!!!
    Đã được chỉnh sửa lần cuối bởi virut35 : 04-11-2011 lúc 09:54 PM.

  2. #2
    Ngày gia nhập
    10 2011
    Bài viết
    552

    Trích dẫn Nguyên bản được gửi bởi virut35 Xem bài viết
    Mình đang học môn Cơ sở lập trình về thuật toán và đệ quy,nhưng không hiểu cho lắm. Mình có 1 bài tập:
    -Một người bán cá có n con cá, mỗi con cá có khối lượng a[i]. Người ta không mua cá theo con, mà mua theo một lượng nào đó.
    Ví dụ: Có 3 con cá, khối lượng lần lượt là: 3kg, 2kg, 4kg. Mua 6kg sẽ phải lấy con cá thứ 2 và thứ 3. Mua 3kg sẽ lấy con cá thứ nhất. Không thể mua 8kg

    Nếu là người mua đầu tiên, hỏi có thể mua được những khối lượng cá nào ?
    Bạn nào có ý tưởng nào về bài toán này xin chia sẻ với. Nếu được bạn có thể chỉ mình cách phân tích bài toán này để ra thuật giải được không, chứ đọc cái đề vào là mình mù tịt, chả biết phải làm sao nữa

    Mém xỉu,bài này Mod chuyển sang box nhập môn lập trình thôi á?? Vậy là mình nhập môn cũng chưa qua được, bùn ghê!!!
    Sinh tổ hợp ko lặp về khối lượng

  3. #3
    Ngày gia nhập
    10 2010
    Bài viết
    14

    Trích dẫn Nguyên bản được gửi bởi clchicken Xem bài viết
    Sinh tổ hợp ko lặp về khối lượng
    Bạn nói rõ được không? Mình học CTDL&GT phần TREE cũng học về đệ quy thì hiểu mà cái này chẳng hiểu mô tê gì cả mặc dù đọc sách rất kỹ

  4. #4
    Ngày gia nhập
    10 2011
    Bài viết
    552

    Trích dẫn Nguyên bản được gửi bởi virut35 Xem bài viết
    Bạn nói rõ được không? Mình học CTDL&GT phần TREE cũng học về đệ quy thì hiểu mà cái này chẳng hiểu mô tê gì cả mặc dù đọc sách rất kỹ
    Bây giờ bạn tưởng tượng bài toán về thế này :

    Cho 1 dãy n các số (có thể trùng nhau , vì cá có thể nặng = nhau ).
    Ta tìm tất cả số cách chọn các số (có thể tối thiểu là chọn 1 số , tối đa n số) sao cho tổng các số trong mỗi cách chọn là khác nhau .
    Diễn giải thành như sau :
    Trong dãy n số ta có thể chọn 1 số,2 số , 3 số ... n số :
    Vậy có số tổ hợp 1Cn mà sao cho tổng của cái bọn này là khác nhau
    Với tổ hợp 2Cn , tổng bonj này khác nhau nhưng phải khác với 1Cn
    Tổ hợp 3Cn...
    4cn...
    ...
    nCn
    --

    Cách để khử các cách mà có cùng khối lượng như sau :
    Cứ đưa kết quả của mỗi cách vào out put cả
    Sau đó phần tử nào trùng nhau thì khử nó đi

    Đấy, ý tưởng là thế. Còn bạn thể hiện trên cấu trúc dữ liệu gì thì "Đièu đó phụ thuộc hành động của bạn "
    Đã được chỉnh sửa lần cuối bởi clchicken : 05-11-2011 lúc 12:18 AM.

  5. #5
    Ngày gia nhập
    10 2010
    Bài viết
    14

    Trích dẫn Nguyên bản được gửi bởi clchicken Xem bài viết
    Bây giờ bạn tưởng tượng bài toán về thế này :

    Cho 1 dãy n các số (có thể trùng nhau , vì cá có thể nặng = nhau ).
    Ta tìm tất cả số cách chọn các số (có thể tối thiểu là chọn 1 số , tối đa n số) sao cho tổng các số trong mỗi cách chọn là khác nhau .
    Diễn giải thành như sau :
    Trong dãy n số ta có thể chọn 1 số,2 số , 3 số ... n số :
    Vậy có số tổ hợp 1Cn mà sao cho tổng của cái bọn này là khác nhau
    Với tổ hợp 2Cn , tổng bonj này khác nhau nhưng phải khác với 1Cn
    Tổ hợp 3Cn...
    4cn...
    ...
    nCn
    --

    Cách để khử các cách mà có cùng khối lượng như sau :
    Cứ đưa kết quả của mỗi cách vào out put cả
    Sau đó phần tử nào trùng nhau thì khử nó đi

    Đấy, ý tưởng là thế. Còn bạn thể hiện trên cấu trúc dữ liệu gì thì "Đièu đó phụ thuộc hành động của bạn "
    Đọc xong thấy dễ thế mà làm mình suy nghĩ mấy bữa nay,=.=,cứ tưởng phải làm thuật giải cao siêu gì lắm chứ

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn