aiy第十三周训练题i题

Bessie wants to navigate her spaceship through a dangerous asteroid field in the shape of an N x N grid (1 <= N <= 500). The grid contains K asteroids (1 <= K <= 10,000), which are conveniently located at the lattice points of the grid.

Fortunately, Bessie has a powerful weapon that can vaporize all the asteroids in any given row or column of the grid with a single shot.This weapon is quite expensive, so she wishes to use it sparingly.Given the location of all the asteroids in the field, find the minimum number of shots Bessie needs to fire to eliminate all of the asteroids.

Input

* Line 1: Two integers N and K, separated by a single space.
* Lines 2..K+1: Each line contains two space-separated integers R and C (1 <= R, C <= N) denoting the row and column coordinates of an asteroid, respectively.

Output

* Line 1: The integer representing the minimum number of times Bessie must shoot.

Sample Input

3 4
1 1
1 3
2 2
3 2

Sample Output

2

Hint

INPUT DETAILS:
The following diagram represents the data, where "X" is an asteroid and "." is empty space:
X.X
.X.
.X.

OUTPUT DETAILS:
Bessie may fire across row 1 to destroy the asteroids at (1,1) and (1,3), and then she may fire down column 2 to destroy the asteroids at (2,2) and (3,2).

#include<stdio.h>
#include<string.h>
int ans,t1,n,m,l1[5000],v[5000],head[4000];
struct node
{
	int to,next;
}f[4000];
int f1(int x)
{
    int i;
	for (i=head[x];i;i=f[i].next)
	{
		int j=f[i].to;
		if (!v[j])
		{
			int q=l1[j];
		    l1[j]=x;
		    v[j]=1;
		    if (!q||f1(q))
            return 1;
		    l1[j]=q;
		}

	}
	return 0;
}
int main()
{
    int i;
	scanf("%d%d",&n,&m);
	for ( i=1;i<=m;i++)
	{
		int x,y;
		scanf("%d%d",&x,&y);

		f[++t1].next=head[x];
		f[t1].to=y;
		head[x]=t1;
	}
	for (i=1;i<=n;i++)
	{
		memset(v,0,sizeof(v));
		ans+=f1(i);
	}
	printf("%d",ans);
	return 0;
}

题意 :给你一个二维网格和一些点,一个操作可以消除一行或一列,问最少用多少次操作是所有点消除。

  思路   以行作为x集合,以列作为y集合,一个行星在(x,y),则x对应X中的点向y对应y中的点连一条边,则某个顶点一旦被选,则               与之相连的边都会被选,也就是选出最少的顶点覆盖所有的边,即最小顶点覆盖。

猜你喜欢

转载自blog.csdn.net/m0_46628834/article/details/106178587