9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。 【输入形式】 输入1行,输入9个[1,20]区间上的整数,每个整数之间以空格为分隔符 【输出形式】 输出1个数,表示输入的9个数中不同数的个数
时间: 2024-03-03 11:50:16 浏览: 114
这道题目可以使用Python语言来实现,代码如下:
```python
nums = input().split() # 输入9个数字并分割为列表
nums_set = set(nums) # 将列表转换为集合,自动去除重复元素
print(len(nums_set)) # 输出集合中元素的数量
```
其中,`input().split()` 用于接收输入并将输入的字符串按照空格分割为一个列表。`set(nums)` 将列表转换为集合,并自动去除重复元素。最后使用 `len(nums_set)` 计算集合中元素的数量,即为不同数的个数。
相关问题
9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。
### 回答1:
可以使用set数据结构来去重,以下是示例代码:
```
#include <iostream>
#include <set>
using namespace std;
int main() {
set<int> s;
for (int i = 0; i < 9; i++) {
int num;
cin >> num;
s.insert(num);
}
cout << s.size() << endl;
return 0;
}
```
输入9个数,将它们插入set中,最后输出set的大小即可。
### 回答2:
假设我们用一个列表来记录每个同学报的数字,我们可以用一个集合来存储所有不同的数字。首先我们创建一个空的集合,然后依次读取每个同学报的数字,将其添加到集合中。最后,我们可以通过查询集合的大小来得到有多少个不同的数字。
下面是一个简单的Python代码示例来实现这个算法:
```python
# 创建一个空集合用于存储不同的数字
unique_numbers = set()
# 循环读取每个同学报的数字
for i in range(9):
number = int(input("请输入同学报的数字:"))
# 将数字添加到集合中
unique_numbers.add(number)
# 输出不同数字的个数
print("不同的数字个数为:", len(unique_numbers))
```
请注意,这个代码示例假设用户输入的数字为1到20之间的正整数,并且每个同学的输入都是有效的。如果需要,你可以根据具体的情况进行适当的输入验证和错误处理。
python: 9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。
可以使用set数据结构来去重,代码如下:
```python
nums = set()
for i in range(9):
num = int(input("请输入第{}个同学报的数字:".format(i+1)))
if num >= 1 and num <= 20:
nums.add(num)
print("不同的数字个数为:", len(nums))
```
输入每个同学报的数字后,将其加入set中,最后输出set的长度即可。
阅读全文