Đệ quy bản 1

View as PDF

Time limit: 1.0s , Memory limit: 256M , Points: 1 (partial)

Hôm nay Bi học về lập trình hàm đệ quy (recursive function). Một nhận định mà thầy giáo đưa ra là Hầu hết các bài toán đều có thể cài đặt bằng đệ quy. Để làm quen với khái niệm hàm đệ quy thầy yêu cầu Bi cài đặt hàm sau:

\displaystyle 
\mathrm{f(n)} = \begin{cases}
    0 & \text{if } n = 0 \\ 
    f(n-1) + n & \text{if } n>0 
\end{cases}

Bi lại thấy khó nên nhờ anh chị lập trình cài đặt giúp, nhớ xây dựng thành hàm nha. Làm xong chuyển cho Bi để em giải bài toán sau.

Input

Dòng duy nhất số nguyên n thỏa 1 \le n \le 10^5.

Chú ý: Nếu bạn viết bằng python sẽ bị giới hạn số lần gọi đệ quy bằng con số 1000. Để khắc phục trường hợp này bạn có thể khai thêm kích thước đệ quy bằng các lệnh sau:

import sys
from functools import lru_cache
sys.setrecursionlimit(150000)

Có thể thay đổi bằng con số khác và dịch với python3 tốt hơn pypy.

Output

In ra kết quả khi gọi hàm cài đặt ở trên.

Samples

Sample Input 1
5
Sample Output 1
15

Comments