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

    solution

    Đề bài: [Toán cho CNTT] Spline tuyến tính từng đoạn

    Cho nnn mốc x0<x1<⋯<xn−1x_0<x_1<\dots<x_{n-1}x0​<x1​<⋯<xn−1​ và giá trị yiy_iyi​. Spline tuyến tính nối các điểm bằng đoạn thẳng. Trên đoạn [xi,xi+1][x_i,x_{i+1}][xi​,xi+1​]:

    S(x)=yi+(yi+1−yi)x−xixi+1−xiS(x)=y_i+(y_{i+1}-y_i)\frac{x-x_i}{x_{i+1}-x_i}S(x)=yi​+(yi+1​−yi​)xi+1​−xi​x−xi​​

    Với xxx nằm ngoài khoảng, dùng đoạn ngoài cùng gần nhất (ngoại suy theo đoạn biên). Hãy tính S(x)S(x)S(x).

    Ví dụ: mốc [0,1,2][0,1,2][0,1,2], y=[0,10,30]y=[0,10,30]y=[0,10,30], tại x=1.5x=1.5x=1.5 cho 202020.

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

      Dòng 1: nnn. Dòng 2: nnn mốc tăng dần. Dòng 3: nnn giá trị yiy_iyi​. Dòng 4: xxx.

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

      2≤n≤502 \le n \le 502≤n≤50, mốc tăng nghiêm ngặt.

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

      S(x)S(x)S(x) làm tròn 4 chữ số thập phân.

    Ví dụ:

    Đầu vào:

    3
    0 1 2
    0 10 30
    1.5
    

    Đầu ra:

    20.0000

    Giải thích:

    x=1.5 thuoc [1,2]: 10+(30-10)*0.5=20.0000.

    Đang tải editor...