我有这个:
struct Weather {
public int day;
public int temperature;
public Weather(int x, int y) {
day = x;
temperature = y;
}
}
我有一个ArrayList,它收集通过struct创建的所有这些数据:
ArrayList wthrList = new ArrayList();
让我们在ArrayList中有30个元素。 “day”变量取值为1到30.“temperature”变量取值为-30到30(由随机生成)。我需要找到负数的最长部分。这意味着如果你有一个数组{0,-1,-2,3,-3,-4,-5,3},那么你将得到答案3(从索引4到6(-3,-4)和-5))。我已经有了这段代码,但现在我被卡住了。
foreach (Weather w in wthrList) {
if (w.temperature < 0) {
}
}
答案 0 :(得分:3)
int negCount = 0;
int maxNegCount = 0;
foreach (Weather w in wthrList)
{
negCount = (w.temperature < 0) ? negCount + 1 : 0;
maxNegCount = Math.max(negCount, maxNegCount);
}