setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // قراءة البيانات من الجدول $stmt = $pdo->query("SELECT id, pay FROM `VAT_report_2024_I` WHERE (`date_time` >= '2023-04-01 00:00:00' AND `date_time` < '2023-07-01 00:00:00') AND `branch_id` != 9"); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); function inSubsetSum(array $a, int $t, array $memo = []) : ?array { $s = array_reduce($memo, function (?int $carry, array $value) { return $carry + $value[1]; }); if ($s === $t) { return $memo; } if ($s >= $t) { return null; } $len = count($a); $keys = array_keys($a); for ($i = 0; $i < $len; ++$i) { $k = $keys[$i]; $v = $a[$k]; $rem = array_slice($a, $i + 1, null, true); $res = inSubsetSum($rem, $t, array_merge($memo, [[$k, $v]])); if ($res !== null) { return $res; } } return null; } function subsetSum(array $a, int $t) : ?array { $subset = inSubsetSum($a, $t); $result = []; foreach ($subset as $_ => [$k, $v]) { $result[$k] = $v; } return $result; } // Example usage $v = array( 55 => 222, 34 => 243, 546 => 657, 66 => 222123, 43 => 22245, 768 => 1234, 657 => 7657, 33 => 435, 756 => 345); $sum = 232349; $EE = subsetSum($v, $sum); PRINT_R($EE); } catch (PDOException $e) { echo "Error: " . $e->getMessage(); } ?>