Tìm đoạn con liên tục ngắn nhất có tổng lớn hơn hoặc bằng S

Cho một dãy gồm n số nguyên dương A1, A2,…, An. (N ≤ 10^5, Ai ≤10^9) và số S. Hãy tìm đoạn con liên tục ngắn nhất có tổng lớn hơn hoặc bằng S.

Mọi người giúp em hướng đi với ạ.
Cảm ơn ạ.

  1. Vòng lặp chạy kiểu gì thế? Cho chạy từ 1???. a[0]?
  2. Mình nghĩ số s phải nhập vào chứ, sao lại nhập k rồi tính s!?!?!?.
  3. Gán s = 0 trong vòng lặp! Chà cũng khổ cho s quá!

Hoặc là mình chưa hiểu đề bài, hoặc là bạn chưa hiểu!

3 Likes

Mình post nhầm ạ. :cry:
Bạn có thể hướng dẫn mình hướng đi của bài không ạ?
Mình cảm ơn.

Với điều kiện đã cho, ta quan sát thấy tổng sẽ tăng ngặt. Vậy khi nào thì dừng cộng thêm vào?

3 Likes

Là sao ạ?
Đây là đề đầy đủ:

Tức là tổng chỉ có lớn hơn mà thôi, mà >= S thì dừng, vậy thì… :smiley:

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