【发布时间】:2019-08-23 20:33:58
【问题描述】:
这应该比较每个列表中的三个数字,如果 A 中的数字大于 B 中的数字,则指向 C,如果 B 中的数字大于 A 中的数字,则指向 D,并且将如果他们是平等的,什么也不做。这是一个例子:
Input | output
A= 1 3 2 | C D
B= 3 2 2 | 1 1
代码如下:
static List<int> compareTriplets(List<int> a, List<int> b)
{
int c = 0;
int d = 0;
for (int i = 0; i < 3; i++)
{
if (a[i] > b[i])
{
c++;
}
else if (b[i] > a[i])
{
d++;
}
}
return c + " " + d;
}
这段代码返回给我这个:
错误 CS0029:无法将类型“字符串”隐式转换为“System.Collections.Generic.List
”
【问题讨论】:
-
您应该返回
List<int>,但您返回的是c +" "+ d。我不明白问题的其余部分。 -
尝试返回 c[i].ToString() +" "+ d[i].ToString;
-
@JuniorCortenbach:那行不通。它仍然是一个字符串
-
也许返回签名应该是
string? -
花点时间想想你在做什么。该函数应该返回什么?它应该返回一个字符串吗?还是应该返回一个包含两个值的列表?
标签: c#