ดูหนึ่งข้อความ
  #5  
Old 01 ธันวาคม 2013, 00:39
ohmohm ohmohm ไม่อยู่ในระบบ
หัดเดินลมปราณ
 
วันที่สมัครสมาชิก: 14 กันยายน 2013
ข้อความ: 47
ohmohm is on a distinguished road
Default

เห็นสูตรใน Wikipedia ครับ http://en.wikipedia.org/wiki/Partiti...#Exact_formula

$p(n) = \sum_{k}^{} (-1)^{k-1} p(n - k(3k - 1)/2) $

การรวมผลบวก (ตรง k) รวมทั้งบวกและลบไปพร้อมกันในแต่ละลูปครับ ถ้าค่า n ที่จะใช้ใส่ใน p(n) เป็นลบ ก็หยุดลูป เพราะถือว่าได้ค่า 0 บวกเพิ่มเข้าไปอีกก็ไม่เพิ่มค่าขึ้นครับ
ผมลองเขียนโปรแกรมตามสูตร มันคำนวณได้ถูกครับ
หรือว่าถ้าเขียนสูตรใหม่ ก็น่าจะได้

$p(n) = \sum_{k=1}^{\infty} ((-1)^{k-1} p(n - k(3k - 1)/2)) + ((-1)^{-k - 1} p(n + k(-3k - 1)/2))$
หรือ
$p(n) = \sum_{k=1}^{\infty} ((-1)^{k-1} p(n - k(3k - 1)/2)) + ((-1)^{k+1} p(n - k(3k + 1)/2))$
ตอบพร้อมอ้างอิงข้อความนี้