jmu-python-重复数据判定 分数 10 作者 蔡莉白 单位 集美大学 函数repeat(ls)判定列表ls中是否包含重复元素,如果包含返回True,否则返回False。每一个列表中只要有一个元素出现两次,那么该列表即被判定为包含重复元素。 然后使用该函数对n行字符串进行处理。最后统计包含重复元素的行数与不包含重复元素的行数。 输入格式: 输入n,代表接下来要输入n行字符串。 然后输入n行字符串,字符串之间的元素以空格间隔。 输出格式: True=包含重复元素的行数, False=不包含重复元素的行数。 其中逗号后面有空格。 输入样例: 5 1 2 3 4 5 1 3 2 5 4 1 2 3 6 1 1 2 3 2 1 1 1 1 1 1 输出样例: True=3, False=2 def repeat(ls): s=set(ls) return False else: return True n=int(input()) countT=countF=0 for i in range(n): countT+=1 else: countF+=1 print( )
时间: 2024-01-15 09:05:50 浏览: 113
下面是对应的 Python 代码实现:
```python
def repeat(ls):
if len(ls) == len(set(ls)):
return False
else:
return True
n = int(input())
countT = countF = 0
for i in range(n):
line = input().split()
if repeat(line):
countT += 1
else:
countF += 1
print("True={0}, False={1}".format(countT, countF))
```
输入样例:
```
5
1 2 3 4 5
1 3 2 5 4
1 2 3 6
1 1 2 3 2
1 1 1 1 1 1
```
输出样例:
```
True=3, False=2
```
注意输出格式,逗号后面有一个空格。统计每行中是否包含重复元素,包含则计入 `countT` 中,不包含则计入 `countF` 中,最后输出它们的值即可。
相关问题
R6-3 jmu-python-发牌 分数 10 作者 蔡莉白 单位 集美大学 从键盘输入一个整数作为随机种子,随机生成一副扑克牌(去掉大小王),循环分给4位牌手,每人5张牌(第1、5、9、13、17张牌给第一个玩家,第2、6、10、14、
18张牌给第二个玩家,以此类推),输出每位玩家手中的牌和对应的点数(计算点数时,将A作为1,J、Q、K作为10,其余按牌面点数计算)。
示例输入:
```
123
```
示例输出:
```
player 1: ['♠️9', '♣️K', '♥️J', '♠️3', '♥️7'],total points: 30
player 2: ['♥️6', '♦️10', '♦️Q', '♠️A', '♦️4'],total points: 31
player 3: ['♠️10', '♠️5', '♠️J', '♠️8', '♠️6'],total points: 39
player 4: ['♣️4', '♠️2', '♥️4', '♦️5', '♣️3'],total points: 18
```
提示:
1. 生成一副扑克牌可以使用列表推导式,如 `cards = [f'{rank}{suit}' for rank in ranks for suit in suits]` ,其中 `ranks` 和 `suits` 分别是大小和花色的列表。
2. 可以使用 `random.shuffle()` 方法将列表中的元素随机排序。
3. 分发牌时可以使用循环和取模运算。
4. 计算点数时可以使用字典或者条件判断语句。
5-2 jmu-python-重复数据判定 分数 8 作者 蔡莉白 单位 集美大学 函数repeat(ls)判定列表ls中是否包含重复元素,如果包含返回True,否则返回False。每一个列表中只要有一个元素出现两次,那么该列表即被判定为包含重复元素。 然后使用该函数对n行字符串进行处理。最后统计包含重复元素的行数与不包含重复元素的行数。 输入格式: 输入n,代表接下来要输入n行字符串。 然后输入n行字符串,字符串之间的元素以空格间隔。 输出格式: True=包含重复元素的行数, False=不包含重复元素的行数。 其中逗号后面有空格。 输入样例: 5 1 2 3 4 5 1 3 2 5 4 1 2 3 6 1 1 2 3 2 1 1 1 1 1 1 输出样例: True=3, False=2 def repeat(ls): s=set(ls) 2 分 return False else: return True n=int(input()) countT=countF=0 for i in range(n): 3 分 countT+=1 else: countF+=1 print( 3 分 )
这是一道关于重复数据判定的题目,要求编写一个函数 `repeat(ls)`,判断列表 `ls` 中是否包含重复元素,如果包含返回 `True`,否则返回 `False`。然后对输入的 n 行字符串进行处理,统计包含重复元素的行数与不包含重复元素的行数。
以下是可能的代码实现:
```python
def repeat(ls):
s = set(ls)
if len(s) == len(ls):
return False
else:
return True
n = int(input())
countT = countF = 0
for i in range(n):
nums = input().split()
if repeat(nums):
countT += 1
else:
countF += 1
print("True={}, False={}".format(countT, countF))
```
在主函数中,首先读入一个整数 n,表示接下来要输入 n 行字符串。然后使用一个 for 循环遍历这些字符串,对于每个字符串,先将其转换为一个包含多个元素的列表 `nums`。然后调用 `repeat(nums)` 函数判断该列表是否包含重复元素,如果是则将计数器 `countT` 加 1,否则将计数器 `countF` 加 1。最后输出统计结果,使用字符串格式化函数 `format()` 将结果格式化成指定的输出格式。
阅读全文