给定一组数据,将其中的数字0去掉并且输出剩余的元素。第一行输入一个整数n代表数据的个数(1≤n≤50)。 第二行输入这n个数。输出剔除0以后,剩余的数字内容。
时间: 2024-03-02 17:51:58 浏览: 82
好的,这是一个简单的编程问题。以下是一个Python代码示例:
```python
n = int(input()) # 输入数据的个数
nums = list(map(int, input().split())) # 输入这n个数
# 剔除0并输出剩余的数字
non_zero_nums = [num for num in nums if num != 0]
print(*non_zero_nums)
```
你可以将上述代码复制到Python环境中进行测试,或者将其嵌入你的Python程序中。
相关问题
pta7-3 去掉重复的数据
题目描述
给定一个长度为 $n$ 的数组 $a$,请你去掉其中的重复元素,只保留出现次数最后一次的元素,然后输出剩余元素的个数以及剩余元素在数组中的位置。
输入格式
第一行包含整数 $n$,表示数组长度。
第二行包含 $n$ 个整数 $a_i$,表示整数数组。
输出格式
第一行输出一个整数,表示去重后剩余元素的个数。
第二行输出一个整数序列,表示剩余元素在原数组中的位置,每个位置后面有一个空格。
数据范围
$1≤n≤10^6,$
$1≤a_i≤10^6$
输入样例:
5
2 3 2 3 1
输出样例:
3
2 4 5
算法1
(哈希表) $O(n)$
时间复杂度
参考文献
python3 代码
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
if (nums.empty()) return 0;
int i = 0;
for (int j = 1; j < nums.size(); ++j)
if (nums[j] != nums[i])
nums[++i] = nums[j];
return i + 1;
}
};
阅读全文