Tìm max trong 1 dãy các số nguyên mà không dùng mảng?

Đề bài:


Còn đây là lời giải của mình và nó đúng hết các testcase trong hackerrank nhưng lại sai 1 testcase.
Mình đã nghĩ đủ các kiểu nhưng vẫn không được, mọi người có thể gợi ý cho mình 1 chút được không ạ.

#include <stdio.h>
#include <stdlib.h>

int main(){
    int b, i, max, n; 
    scanf("%d", &n);
    if (n<=0){
        exit(0)
    }
    for (i=1; i<=n; i++){
        scanf("%d", &b);
        if (max<b){
            max=b;
        }
    }
    printf("%d", max);
    return 0;
}

Bạn chưa khởi tạo max :slight_smile:

3 Likes

À, đây là cái mình ưng nhất thôi, các lần trước mình test mình có khởi tạo max = 0 rồi và nó vẫn sai nên mình nghĩ không cần khởi tạo max ấy.

Bạn đọc kỹ lại đề bài: tìm giá trị lớn nhất trong 1 dãy các số NGUYÊN, tức có cả số âm. Phần ví dụ nó cho toàn số dương để lừa bạn đó. Nếu bạn cho max = 0 mà mảng toàn số âm không thì sai là điều đương nhiên.

5 Likes

ukm ha, bạn không nói mình cũng không để ý luôn ý, cảm ơn bạn nhiều nha.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?