列表

详情


NC210719. A、不一样的食物链

描述

上帝想要创建规则,其中有N个关系,每个关系由狩猎者和猎物组成,均为字符串,若是这N条关系中每个事物都有它的天敌,则说明上帝创造的规则合理,反之不合理。对于合理输出数字1,不合理输出数字0。

输入描述

第一行输入为N
之后的N行输入均由两个字符串组成,第一个字符串代表狩猎者,第二个字符串代表猎物

输出描述

输出只有一行,仅仅为1或0,行末无多余空格

示例1

输入:

5
A B
B C
C D 
D E
E C

输出:

0

说明:

1、输入:

第一条关系,A B,意思为,A是B的狩猎者,B是A的猎物,其余的输入同理。

2、输出:

A没有作为猎物,故没有属于A的狩猎者,所以此规则不合理,故输出0。

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++14(g++5.4) 解法, 执行用时: 3ms, 内存消耗: 376K, 提交时间: 2020-08-25 10:19:13

#include<bits/stdc++.h>
using namespace std;
char x[1010],y[1010];
int main(){
	int n;
	cin>>n;
	set<string> a;
	set<string> b;
	while(n--){
		cin>>x>>y;
		a.insert(x);
		a.insert(y);
		b.insert(y);
	}
	if(a.size()==b.size()){
		cout<<1;
	}
	else{
		cout<<0;
	}
	return 0;
}

C++ 解法, 执行用时: 4ms, 内存消耗: 432K, 提交时间: 2021-08-06 14:15:57

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n; cin>>n;
	set<string>A,B;
	while(n--)
	{
		string a,b;
		cin>>a>>b;
		A.insert(a);
		A.insert(b);
		B.insert(b);
	}
	if(A.size()==B.size())
	cout<<"1";
	else
	cout<<"0";
 } 

Python3 解法, 执行用时: 43ms, 内存消耗: 4588K, 提交时间: 2022-06-13 16:47:31

a,b=set(),set()
for x in range(int(input())):
    c,d=input().split()
    if c!=d:
        a.add(c)
        b.add(d)
print(1 if a&b==a else 0)

上一题