题目描述
在给定的数组中删除一个数。正确的输入描述:
多组测试。
每组第一行输入1个整数n(n<20)
第二行输入n个整数
第三行输入1个整数m。输出描述:
删除在第一行的n个整数中第一次出现数字m并删除,然后按照顺序输出剩下的数。示例1
正确的输入:
4
1 2 3 4
3
输出:
1 2 4相似之处
这道题和未修改时的定位查找 类似,主要是题目示例与真正的测试用例不符,我在定位查找问题上也写了相关的题解进行说明 定位查找题解 。对于其他语言来说可能在读取方式上与C#不同,所以按照题目所描述的输入格式进行读取数据也能通过,但是C#是不行的,我也会试着反馈这道题给工作人员进行修正。C# 代码:
using System; class Program{ static void Main(){ string input; string[] tokens; while((input = Console.ReadLine()) != null){ input = Console.ReadLine(); tokens = input.Split(); input = Console.ReadLine(); int ind = -1; for(int i = 0; i < tokens.Length; i++) if(tokens[i] == input){ ind = i; break; } for(int i = 0; i < tokens.Length; i++) if(ind != i) Console.Write(tokens[i] + " "); Console.WriteLine(); } } }
更新
通过反馈已经修正了题目的输入描述和示例。作为对比,下图为未修正时的题目: