เกือบทุกฟังก์ชั่นสามารถแสดงเป็นพหุนามที่มีเงื่อนไขไม่สิ้นสุด
ตัวอย่างเช่น, e^x = 1 + x + x^2/2! + x^3/3! + x^4/4! + ...
ตัวอย่างเช่น, sin(x) = x - x^3/3! + x^5/5! - x^7/7! + ...
สัมประสิทธิ์ของn
คำศัพท์ -th สร้างลำดับและฟังก์ชันที่เกี่ยวข้องเรียกว่าฟังก์ชันการสร้างของลำดับ
ค่าสัมประสิทธิ์ของn
คำศัพท์ -th สร้างลำดับ
บ่อยครั้งที่n
คำที่ -th จะมีตัวn!
ส่วน ดังนั้นเราจึงคูณค่าสัมประสิทธิ์โดยn!
การหาลำดับอื่นซึ่งฟังก์ชันการสร้างเลขชี้กำลังจะเป็นฟังก์ชันดั้งเดิม
ยกตัวอย่างเช่นลำดับที่มีฟังก์ชั่นเอกฝ่ายคือจะเป็นe^x
1,1,1,1,...
ยกตัวอย่างเช่นลำดับที่มีฟังก์ชั่นเอกฝ่ายคือจะเป็นsin(x)
0,1,0,-1,0,1,0,-1,...
งาน
งานของคุณคือการหาn
ระยะ -th ของลำดับที่มีการชี้แจงสร้างฟังก์ชั่นtan(x)
คือ
Testcases
n result
0 0
1 1
2 0
3 2
4 0
5 16
6 0
7 272
8 0
9 7936
10 0
11 353792
12 0
13 22368256
14 0
15 1903757312
16 0
17 209865342976
18 0
19 29088885112832
20 0
21 4951498053124096
22 0
23 1015423886506852352
24 0
25 246921480190207983616
26 0
(คัดลอกมาจากที่นี่ ) (คำเตือน: 0
คำที่แตกต่างกัน)
ตัวอย่างการนำไปใช้
# copied from https://github.com/Mego/Seriously/blob/v2.0/SeriouslyCommands.py#L16
def memoized(f):
memo = {}
def m_fun(*args):
if args in memo:
return memo[args]
else:
res = f(*args)
memo[args] = res
return res
return m_fun
# copied from https://github.com/Mego/Seriously/blob/v2.0/SeriouslyCommands.py#L169
@memoized
def binomial(n,r):
if r > n:
return 0
elif r==n:
return 1
res = 1
i = 1
while i<=r:
res *= (n+1-i)
res /= i
i+=1
return int(res)
# 2*u(n+1) = Sum_{k=0..n} binomial(n, k)*u(k)*u(n-k)
# from A000111
@memoized
def u(n):
if n<0: return 0
if n==0: return 1
if n==1: return 1
return sum([binomial(n-1,k)*u(k)*u(n-1-k) for k in range(n)])//2
def t(n):
if n%2 == 0: return 0
return u(n)
print('\n'.join([str(x) + ' ' + str(t(x)) for x in range(26)]))
อ้างอิง
- สร้างฟังก์ชั่นบน Wikipedia
- ฟังก์ชันสร้างเลขชี้กำลังบนวิกิพีเดีย
- ตัวอย่างฟังก์ชันการสร้างแบบเอ็กซ์โปเนนเชียลบน Wikipedia
- สร้างฟังก์ชั่นบน MathWorld
- ฟังก์ชันสร้างเลขยกกำลังบน MathWorld
- ซีรี่ส์ Taylor บนวิกิพีเดีย
- การสืบทอดของ 9 เงื่อนไขแรกของลำดับที่ต้องการ
- ข้อผูกมัด OEIS A009006 (โปรดทราบว่า
0
คำที่ -th นั้นแตกต่างกัน) - ขั้นตอนวิธี
- OEIS A000111: ตัวเลขขึ้น / ลง