/* primer48.c - igra brojevima * - Dati su celi pozitivni brojevi w1, ..., wn * i broj S. * Izlaz je podskup I brojeva wi takav * da je S = SUMA(i prolazi I) wi ili, ako * takav podniz ne postoji, prazan skup ************************************************************/ #include int cifre( int, int ); int w[] = { -1, 2, 9, 10, 7, 4, 55, 17, 1 }; int S = 65; int n = 9; main() { cifre( S, 0 ); } int cifre( int t, int i ) { if( t == 0 ) return 1; else if( ( t < 0 ) || ( i > n ) ) return 0; else if( cifre( t-w[i], i+1 ) ) { printf("%d ", w[i] ); return 1; } else return cifre( t, i + 1 ); }