#include<stdio.h> int n,m; int main() { int i,j,a; while(scanf("%d",&n)!=EOF) { a=1; for(i=2;i<=n;i++) { j=i-1; a=a+(i+1)*i/2+(j+j%2)*((i+1)/2)/2; } printf("%d/n",a); } return 0; } 每新增加一行,将该行中的正三角和倒三角分开归纳,先统计以小正三角为左下角的三角形的个数,再统计以倒三角为顶角的三角形的个数,然后再加上不包含本行三角形的个数。