83 lines
2.0 KiB
PHP
Executable File

<?php
ini_set('memory_limit', '512M');
set_time_limit(300);
// بيانات الاتصال بقاعدة البيانات
$host = 'localhost';
$dbname = 'aqdamypanel_aqdamy';
$user = 'aqdamypanel_mysql';
$pass = 'AST4dxy6vEsi';
try {
// الاتصال بقاعدة البيانات باستخدام PDO
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$pdo->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();
}
?>