problema comis voiajorului

Problema comis-voiajorului Un comis voiajor trebuie să viziteze un număr n de oraşe. Iniţial, el se află într-unul dintre ele, notat 1. Comis voiajorul doreşte să nu treacă de două ori prin acelaşi oraş, iar la întoarcere să revină în oraşul din care a plecat. Cunoscând legăturile existente între oraşe, se cere să se tipărească … Read more

problema colorarii hartilor

Problema colorarii hartilor Fiind data o harta cu n tari, se cer toate solutiile de colorare a hartii, utilizand cel mult patru culori, astfel incat doua tari ce au frontiera comuna sa fie colorate diferit. Este demonstrat faptul ca sunt suficiente numai patru culori pentru ca orice harta sa poata fi colorata.   #include<iostream.h>#include<conio.h>#include<math.h>int st[20],n,k; … Read more

combinari

//combinari#include<iostream.h>int st[20],n,k; void init(){int i;cout<<“n=”;cin>>n;cout<<“k=”;cin>>k;st[0]=0;} void tipar(int p){int j;for(j=1;j<=p;j++)cout<<st[j]<<” “;cout<<endl;} int solutie(int p){return (p==k);} void bkt(int p){int val;for (val=st[p-1]+1;val<=n;val++){st[p]=val;if(solutie(p))tipar(p);elsebkt(p+1);}} void main(){init();bkt(1);} {joscommentenable}

aranjamente

//aranjamente#include<iostream.h>int st[20],n,k; void init(){int i;cout<<“n=”;cin>>n;cout<<“k=”;cin>>k;for(i=1;i<=n;i++) st[i]=0;} void tipar(int p){int j;for(j=1;j<=p;j++)cout<<st[j]<<” “;cout<<endl;} int valid(int p){int i,ok;ok=1;for(i=1;i<p;i++)if(st[p]==st[i]) ok=0; return ok;} int solutie(int p){return (p==k);} void bkt(int p){int val;for (val=1;val<=n;val++){st[p]=val;if (valid(p))if(solutie(p))tipar(p);elsebkt(p+1);}} void main(){init();bkt(1);} {joscommentenable}

permutari

//permutari#include<iostream.h>int st[20],n; void init(){int i;cout<<“n=”;cin>>n;for(i=1;i<=n;i++) st[i]=0;} void tipar(int p){int j;for(j=1;j<=p;j++)cout<<st[j]<<” “;cout<<endl;} int valid(int p){int i,ok;ok=1;for(i=1;i<p;i++)if(st[p]==st[i]) ok=0;return ok;} int solutie(int p){return (p==n);} void bkt(int p){int val;for (val=1;val<=n;val++){st[p]=val;if (valid(p))if(solutie(p))tipar(p);elsebkt(p+1);}} void main(){init();bkt(1);} {joscommentenable}