一道关于数据执行次数的有关问题

一道关于数据执行次数的问题!
问题一:
1.for(i=1;i<=n;i++);
2. for(j=1;j<=i;j++);
3. for(k=1;k<=j;k++);
4. x++;
问第四条语句执行的次数。
答案是n^2(n+1)/2
求问具体是怎么算的?

问题二:
1.for(i=1;i<=n;i++);
2. for(j=1;j<=n;j++);
3. for(k=1;k<=j;k++);
4. x++;
问第四条语句执行的次数。
答案是n(n+1)(n+2)/6
求问具体是怎么算的?

小弟感激不尽啊!!!!

------解决方案--------------------
哈哈 如何就能 看出
【i循环n次,j循环(n+1)/2次,k循环(n+2)/3次】呢?解释下啊

第一题可以这么考虑
最里层两个嵌套for循环正好是i*(i+1)/2次
考虑最外层的for循环的话那么就是
n
Σ(i*(i+1)/2) 这样算出来 就是 n(n+1)(n+2)/6
i=1
探讨

LZ,你搞错答案了


int x=0;
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
for(int k=1; k<=j; k++)
x++;

x=n*n*(n+1)/2
这个很好算,内部两个循环次数为(1+2+...+n)=n*(n+1)/2
故而,i循环n次,j循环n次,k循环(n+1)/2次

int x=0;……