Tôi đang cố gắng đếm chuỗi dài nhất của các phần tử tăng liên tiếp trong một mảng được tạo ngẫu nhiên, MOODS. Mã này luôn trả về một giá trị nhỏ hơn những gì là chính xác.Đếm tăng các phần tử trong một mảng
int maxDays = 0;
int days = 0;
for (int i = 0; i < MOODS.size() - 1; i++) {
if (MOODS.get(i + 1) > MOODS.get(i)) {
days += 1;
if(days>maxDays){
maxDays=days;
}
} else {
days = 0;
}
}
return maxDays;
}
Tôi nghĩ rằng bạn bỏ qua thực tế là khi MOODS.get (i + 1)> MOODS.get (i) lần đầu tiên, khi ngày = 0, chuỗi chuỗi ngày càng tăng có chiều dài là hai . Sửa lỗi đó và nó sẽ hoạt động. –
Oh người đàn ông, tôi đã dành quá lâu đập đầu của tôi chống lại lỗi đó ... Cảm ơn bạn rất nhiều. – olwatshisface
Bạn được chào đón :). Mã trong câu trả lời sẽ giải quyết vấn đề và xử lý trường hợp đặc biệt của MOODS.size() = 0. –