Dễ 0 đã giải Tỷ lệ chấp nhận 0%

First Negative Index

Find where the first negative number appears.

Bạn sẽ học được gì

  • Tìm trong danh sách từ đầu
  • Trả về ngay khi tìm thấy
  • Trả về -1 khi không có kết quả

Đề bài

Find the position (counting from 0) of the first negative number in the list.

Implement first_negative_index(numbers).

Input

numbers: The list of integers.

Output

Return the index, or -1 if there are no negative numbers.

Ràng buộc

0 ≤ length ≤ 100,000

Ví dụ

Ví dụ 1
Đầu vào:
numbers = [4, 0, -2, -7]

Kết quả mong đợi:
expected = 2
Đầu vào:
std::vector<long long> numbers = {4, 0, -2, -7};

Kết quả mong đợi:
long long expected = 2;
Đầu vào:
long[] numbers = new long[] {4, 0, -2, -7};

Kết quả mong đợi:
long expected = 2;

Giải thích

-2 at index 2 is the first negative value.

Ví dụ 2
Đầu vào:
numbers = [1, 2, 3]

Kết quả mong đợi:
expected = -1
Đầu vào:
std::vector<long long> numbers = {1, 2, 3};

Kết quả mong đợi:
long long expected = -1;
Đầu vào:
long[] numbers = new long[] {1, 2, 3};

Kết quả mong đợi:
long expected = -1;

Giải thích

There are no negative numbers, so the answer is -1.

Hướng tiếp cận

Hãy tự thử trước, sau đó mở từng gợi ý một.

Gợi ý 1

Bạn chỉ cần vị trí đầu tiên có giá trị nhỏ hơn 0.

Gợi ý 2

Duyệt từ trái sang phải và dừng ngay khi gặp giá trị âm đầu tiên.

Gợi ý 3

Nếu không có giá trị âm, nhớ trả về giá trị cho trường hợp không tìm thấy.

Độ phức tạp mong đợi

thời gian O(n), bộ nhớ phụ O(1)

Tham khảo

Thử thách này đã được điều chỉnh cho CodeUtility. Hãy làm theo đề bài và các ràng buộc ở trên.

Học hỏi từ người khác

Giải pháp cộng đồng

Chưa có giải pháp nào được chia sẻ. Hãy giải thử thách này để đăng giải pháp đầu tiên.