Pagini recente » Cod sursa (job #574431) | Cod sursa (job #1155622) | Cod sursa (job #810355) | Cod sursa (job #2509029) | Cod sursa (job #478379)
Cod sursa(job #478379)
#include<fstream.h>
#include<iostream.h>
ifstream f("dusman.in");
ofstream g("dusman.out");
int m,n,k,i,v[1001],a,b,s[1001],ok,mod,aux,caut,moda,auxa,pi;
char d[1001][1001];
int main()
{
f>>n>>k>>m;
for(i=1;i<=m;i++)
{f>>a>>b;
d[a][b]=d[b][a]='1';}
i=1; auxa=1; //g<<k<<'\n';
while(k>0)
{caut=auxa; ok=0;
while(s[i]==0&&caut<=n)
if(v[caut]==0&&d[caut][s[i-1]]!='1') {ok=1; v[caut]=1;s[i]=caut;}
else caut++;
if(moda==1) {moda=0;v[auxa]=0; auxa=1;}
if(ok==0) {i--; auxa=s[i]; moda=1; s[i]=0;}
else i++;
if(mod==1) {mod=0; v[aux]=0;}
if(i==n+1) {k--; if(k>0) {i=n-1; v[s[n]]=0; aux=s[n-1]; mod=1; s[n-1]=s[n]=0;}}
//cout<<"bucla\n";g<<k<<'\n'; for(pi=1;pi<=n;pi++) g<<s[pi]<<' ';
//g<<'\n';
}
for(i=1;i<=n;i++) g<<s[i]<<' ';
g<<'\n';
f.close(); g.close();
return 0;
}