01/10/2018, 17:10

Bài tập quay lui chia mảng thành các nhóm nhỏ có tổng bằng nhau

Cho dãy A gồm n số (1 < n <= 10) và một số nguyên dương K (1 < K <= n/2). Hãy tìm cách chia dãy số A thành K nhóm sao cho tổng của chúng bằng nhau.
Dữ lieu vào gồm 2 dòng, dòng đầu chứa 2 số nguyên n và K, dòng thứ 2 ghi n số của dãy A. Dữ liệu ra gồm K dòng, mỗi dòng là các số thuộc cùng một nhóm, nếu không chia được thì ghi -1
Vd:

Input:
5 3
1 4 6 9 10

Output:
1 9
4 6
10

Em mới học đệ quy quay lui mà thầy cho bài này thấy khoai quá mọi người ạ, ai có ý tưởng nào giúp em với

Kopebanmuoi viết 19:19 ngày 01/10/2018

ý tưởng ban đầu của mình :

  1. tổng các số trong dãy lại rồi chia cho K ( vừa lấy dư vừa lấy thương)
    ->dư khác 0 => ghi ra -1
    -> dư =0 => sang bước 2
    2.đưa về bài toán subset sum rồi làm
Anh chàng Doggo viết 19:16 ngày 01/10/2018

Ra vậy, mình làm được rồi, tks bạn nhé

Bài liên quan
0