Pagini recente » Cod sursa (job #2312695) | Cod sursa (job #1014323) | Cod sursa (job #1953110) | Borderou de evaluare (job #2891570) | Cod sursa (job #1974109)
#include <iostream>
using namespace std;
int n,m,v[30],a[30][30],v1 [30],pret [30];
int suma;
void citire (){ cout<<"ok";
cin>>n>>m;
for(int i=1;i<=m;++i){
cin>>a [i][1]>>a [i][2];
for(int j=3;j<=a [i][2]+2;++j) cin>>a[i][j];} cout<<"ok1";
for(int e=1;e<=n;++e)cin >>pret[e]; cout<<"ok2";
}
int verific (int n){
int produs=1;
for(int y=1;y <=n;++y) produs*=v [y];
if (produs) { for (int t=1;t <=n;++t) v1 [t]=0; return 1;}
else {for (int t=1;t <=n;++t) v1 [t]=0;return 0;}
}
void insert (int k){ int sm=0;
for (int x=1;x <=k;++x) sm+=a [v[x]][2]; cout <<sm <<"sm ";
if (sm==n) { cout <<"insert";
for(int x=1;x <=k;++x) {int i=v [x]; for (int j=3;j <=a[i][2]+2;++j) v1 [a [i][j]]=a [i][1];}
if (verific (n)) { suma=0; for (int y=1;y <=n;++y) suma+=pret [y]/v1 [y];cout <<suma;}
}
}
void bkt (int k){cout <<"bkt"<<"\n";
for (int x=v [k-1]+1;x <=m;++x){
v [k]=x; insert (k); bkt (k+1);
}
}
int main (){
citire ();
cout<<"\n"<<pret [3]<<" ";
bkt (1);
cout<<suma;
return 0;
}