PDA

View Full Version : مجموع زیر مجموعه ها



facetoface
دوشنبه 25 تیر 1386, 06:24 صبح
برنامه ای به زبان V.B به صورت console یا windows application -برای این الگوریتم می خواهم
با سپاس فراوان.

مجموع زیر مجموعه ها
مسئله: تعیین همه ی ترکیبات اعداد صحیح موجوددر یک مجموعه ی n عدد صحیح، به طوری که حاصل جمع آنها مساوی مقدار معین w شود.
ورودی: عدد صحیح مثبت N ، آرایه ی مرتب به ترتیب غیر نزولی از اعداد صحیح مثبتw که از 1 تا n اندیس گذاری شده اند و عدد صحیح مثبت w.
خروجی : همه ی ترکیبات اعداد صحیح که حاصل جمع آنها مساوی w شود.


Void sum ( index I, int weight , int total)
{
If (promising (i))
If (weight = w)
cout<< include[1] to include [i];
else
{
include [i+1] = “yes”; // include w[i+1]
sum (i+1 , weight + w[i+1] , total - w[i+1]);
include [i+1] = “no”; //do not include w[i+1]
sum (i+1 , weight , total - w[i+1]);
}
}

bool promising (index i);
{
return (weight + total >= w ) && (weight = w or weight + w[i+1] <= w );