Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Lập trình Web & Backend] Slice an toàn tại biên

    Slice an toàn tại biên

    Khi lấy một đoạn [start, end) của mảng, cần xử lý an toàn các trường hợp biên: start âm, end vượt quá độ dài, start > end...

    Hãy tự cài đặt safeSlice(arr, start, end) trả về các phần tử từ chỉ số start (kẹp về [0, len]) đến trước end (kẹp về [0, len]). Nếu sau khi kẹp mà start >= end, trả mảng rỗng. Không dùng slice (hãy dùng vòng lặp) để hiểu rõ logic, nhưng kết quả phải giống slice đã kẹp biên.

    Ví dụ

    safeSlice([1,2,3,4], -2, 100) → kẹp start=0, end=4 → [1,2,3,4].

    • Định dạng đầu vào:

      Dòng 1: JSON mảng số arr. Dòng 2: số nguyên start. Dòng 3: số nguyên end.

    • Ràng buộc đầu vào:

      0 ≤ độ dài arr ≤ 1000; start, end là số nguyên bất kỳ (có thể âm hoặc rất lớn).

    • Định dạng đầu ra:

      In JSON mảng kết quả.

    Ví dụ:

    Đầu vào:

    [1,2,3,4]
    -2
    100
    

    Đầu ra:

    [1,2,3,4]

    Giải thích:

    start=-2 kẹp về 0, end=100 kẹp về 4 → lấy toàn bộ [1,2,3,4].

    Đang tải editor...