⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pku1029.cpp

📁 这是ACM 方面的资料 是PKU的 北京大学的出来的
💻 CPP
字号:
#include <stdio.h>
#define size 501

class Compare
{
	public:
	int l[size], r[size];
	int c, s;
	bool cmp(int id, int v)
	{
		int left, right, i;
		left = 0;
		right = 0;
		for (i = 0; i < c; i++)
		{
			left += (l[i] == id) ? v : 0;
			right += (r[i] == id) ? v : 0;
		}
		if (left - right == s)
		{
			return 1;
		}
		return 0;
	}
};

Compare cp[101];
int N, t;

int Judge()
{
	int i, j;
	char res[2];
	int ans;
	scanf("%d%d", &N, &t);
	for (i = 0; i < t; i++)
	{
		scanf("%d", &cp[i].c);
		for (j = 0; j < cp[i].c; j++)
		{
			scanf("%d", &cp[i].l[j]);
		}
		for (j = 0; j < cp[i].c; j++)
		{
			scanf("%d", &cp[i].r[j]);
		}
		scanf("%s", res);
		if (res[0] == '<')
		{
			cp[i].s = -1;
		}
		else if (res[0] == '=')
		{
			cp[i].s = 0;
		}
		else
		{
			cp[i].s = 1;
		}
	}
	ans = 0;
	for (i = 1; i <= N; i++)
	{
		for (j = 0; j < t; j++)
		{
			if (!cp[j].cmp(i, 1))
			{
				break;
			}
		}
		if (j == t)
		{
			if (ans != 0)
			{
				return 0;
			}
			ans = i;
		}
	}

	for (i = 1; i <= N; i++)
	{
		for (j = 0; j < t; j++)
		{
			if (!cp[j].cmp(i, -1))
			{
				break;
			}
		}
		if (j == t)
		{
			if (ans != 0 && ans != i)
			{
				return 0;
			}
			ans = i;
		}
	}

	return ans;
}

int main()
{
	printf("%d\n", Judge());
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -