#include <stdio.h>#define NUM 10unsigned int func1(int a[], unsigned int n, unsigned int m, unsigned int k, int v);int main(){ int a[NUM]; int n,m,k,v; int i; int answer=2; n = NUM; printf("\nEnter array %d digits\n", n); for (i = 0; i < n; i++) { scanf("%d", &a[i]); printf("\n"); } printf("\nPlease Enter M, V and K\n"); scanf("%d", &m); scanf("%d", &v); scanf("%d", &k); answer = func1( a, n, m, k, v); if (answer == 1) printf("\nYou got it right!"); if (answer == 0) printf("\nYou got it wrong!"); return 0;}unsigned int func1(int a[], unsigned int n, unsigned int m, unsigned int k, int v){ int ret_val; if ((m == 0) && (v == 0) && (k == 0)) return 1; if (n==0) return 0; if ((m == 0) && (v != 0)) return 0; if ((m == 0) && (v == 0) && (k != 0)) return 0; if ((k == 0) && (a[0] < 0)) return func1((a+1), (n-1), m, k, v); if (a[0] >= 0) { ret_val = func1((a+1), (n-1), (m-1), k, (v-a[0])); } else { ret_val = func1((a+1), (n-1), (m-1), (k-1), (v-a[0])); } if (ret_val == 1 ) return ret_val; else { return func1((a+1), (n-1), m, k, v); }}