Page 1 of 1

### 11550 - Demanding Dilemma

Posted: Mon Nov 03, 2008 4:05 am
pls give me some test cases.i m getting wa.
heres my code

Code: Select all

``````
``````

### Re: 11550 - Demanding Dilemma

Posted: Mon Nov 03, 2008 2:27 pm
I WA too...-_-!
but I can't understand your code on:if(arr[j]=='1'&& i!=j)count++;
why do you check if i!=j? I think it doesn't need...

### Re: 11550 - Demanding Dilemma

Posted: Mon Nov 03, 2008 2:54 pm
try this case
Input:

Code: Select all

``````1
3 2
1 1
1 0
0 1``````
My AC output:

Code: Select all

``Yes``
hope this helps..

### Re: 11550 - Demanding Dilemma

Posted: Mon Nov 03, 2008 7:39 pm
corrected but still wa

Code: Select all

``````void call(int n,int m){
int count=0,fc=0;
for(int j=0;j<m;j++){
count=0;
for(int i=0;i<n;i++){
if(arr[i][j]=='1')count++;
}
if(count==2)
fc++;
}
if(fc==m)
cout<<"Yes"<<endl;
else cout<<"No"<<endl;
return;
}
``````

### Re: 11550 - Demanding Dilemma

Posted: Mon Nov 03, 2008 7:45 pm
You must also check if there are no two identical edges defined by the incidence matrix. If there are, you should return "No".

### Re: 11550 - Demanding Dilemma

Posted: Tue Nov 04, 2008 11:49 am
thanks got ac after a number of tries.

### Re: 11550 - Demanding Dilemma

Posted: Wed Nov 05, 2008 6:34 am
rij wrote:thanks got ac after a number of tries.
can you say more detail?
I still WA...

### Re: 11550 - Demanding Dilemma

Posted: Wed Nov 05, 2008 8:12 am
The graph should be a simple indirected one.

Pay attention to the word 'simple'.

### Re: 11550 - Demanding Dilemma

Posted: Thu Nov 06, 2008 6:23 am
I still WA....I need help...

Code: Select all

``````void prepare()
{
scanf("%d%d",&n,&m);
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
flag[i][j]=false;
for (int i=1;i<=n;i++)
for (int j=1;j<=m;j++)
scanf("%d",&map[i][j]);
}

bool work()
{
for (int i=1;i<=m;i++)
{
int u=-1,v=-1;
for (int j=1;j<=n;j++)
if (map[j][i])
{
if (u==-1) u=j;else
if (v!=-1) return false;else v=j;
}
if (u*v<0) return false;
if (flag[u][v]) return false;
flag[u][v]=flag[v][u]=true;
}
return true;
}
``````

### Re: 11550 - Demanding Dilemma

Posted: Thu Jan 14, 2010 6:21 pm
To : zhouerjin
Change only one line & i hope that will make you AC.

Code: Select all

``````if (u*v<0) return false;
``````
change to ->

Code: Select all

``````if (u==-1||v==-1) return false;
``````
Because if u & v two are -1 then u*v>0

### Re: 11550 - Demanding Dilemma

Posted: Fri Aug 17, 2012 4:31 am
This is a very simple problem.
Just check if every column(edge) has exactly two vertex and no two columns(edges) has same vertexes(Because multiple edges are not allowed) You can try this Cases Input :

Code: Select all

``````3

3 3
1 1 0
1 1 1
1 0 0

2 2
1 1
1 1

3 3
1 0 0
1 1 1
0 1 1``````
Output :

Code: Select all

``````No
No
No``````
In 1st case first column(edge) has three vertex which is not possible
In 2nd case 1st and 2nd edges have the same vertexes (1,2) and (1,2) so again No
In 3rd case same thing occurs like 2nd case.Here 2nd and 3rd edges have the same vertexes (2,3) and (2,3)

### Re: 11550 - Demanding Dilemma

Posted: Tue Dec 11, 2012 9:26 am
input

Code: Select all

``````1
4 3
1 1 1
1 0 0
0 1 0
0 0 0``````
output No

### Re: 11550 - Demanding Dilemma

Posted: Thu Apr 16, 2015 1:01 pm
Added some input to help with testing / debugging here:

http://www.udebug.com/UVa/11550