题目描述
有一个国家有两类人,绅士与流氓。绅士说的都是实话,流氓说的都是假话。有一个外国人来到这个国家,碰到A、B两个人。A说:B是流氓。B说:我们两个不是一类人。请判断A、B两人到底是绅士还是流氓。
输入描述
本题无输入。
输出描述
输出“V1 V2”,V1和V2分别表示A和B是绅士还是流氓,用G表示绅士、L表示流氓。如果有多个答案,则按字典序输出(有几个就输出几个),每个答案占一行。
# 定义可能的身份
identities = ['G', 'L']
# 用列表推导式遍历所有可能的身份组合
possible_situations = [(a, b) for a in identities for b in identities]
# 过滤出符合条件的情况
valid_situations = []
for A, B in possible_situations:
# A说B是流氓
statement_A = (B == 'L') if A == 'G' else not (B == 'L')
# B说他们不是一类人
statement_B = (A != B) if B == 'G' else not (A != B)
# 如果A和B的说法都符合他们的身份,则认为这是一种有效的情况
if statement_A and statement_B:
valid_situations.append((A, B))
# 按照字典序排序并输出
valid_situations.sort()
for situation in valid_situations:
print(' '.join(situation))