什么样的数学将帮助我解决编程问题?

cam*_*elt 0 algorithm math

我一直在研究各种编程问题和算法,以提高我的编程和解决问题的能力.但是,我继续遇到像这样的描述:

"设A = [a1,a2,...,an]是整数1,2,...,n的排列.一对索引(i,j),1 <= i <= j <= n ,如果ai> aj,则是置换A的反转.我们给出整数n> 0且k> = 0.包含正好k反转的n元素排列的数量是多少?" (来源:http://www.spoj.pl/problems/PERMUT1/)

为了让这种问题描述对我有意义,我需要学习什么样的数学?

waf*_*dox 6

离散数学.它涉及很多组合,概率等,这就是你在那里遇到的问题.(http://en.wikipedia.org/wiki/Discrete_mathematics)

能够阅读一组方程可能也不会有害.