Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

using System;

namespace ConsoleApp
{
class Program
{
static void PSkup(bool[] daliElement, int[] skup, int a)
{
bool pocetak = true;
int suma = 0;
for (int i = 0; i < daliElement.Length; i++)
{
if (daliElement[i])
suma += skup[i];
}
if (suma != a)
return;
Console.Write("{");
for (int i = 0; i < daliElement.Length; i++)
{
if (daliElement[i])
{
if (pocetak)
{
pocetak = false;
}
else
{
Console.Write(", ");
}
Console.Write("{0}", skup[i]);
}
}
Console.WriteLine("}");
}
static void PartitivniSkup(bool[] daliElement, int n, int[] skup, int a)
{
if (n == 0)
{
PSkup(daliElement, skup, a);
}
else
{
daliElement[n - 1] = true;
PartitivniSkup(daliElement, n - 1, skup, a);
daliElement[n - 1] = false;
PartitivniSkup(daliElement, n - 1, skup, a);
}
}
static void Main(string[] args)
{
int a = int.Parse(Console.ReadLine());
int n = int.Parse(Console.ReadLine());
bool[] daliElement = new bool[n];
int[] skup = new int[n];
for (int i = 0; i < n; i++)
{
skup[i] = int.Parse(Console.ReadLine());
}
PartitivniSkup(daliElement, n, skup, a);
}
}
}

You might also like