A Very Easy Triangle Counting Game
题意:在圆上取n个点,相邻两个点之间连线,(注意,n和1相邻),然后所有点对(i ,i+2)相连,问能形成的不同的三角形有多少个?
思路:找规律
n=3,cnt=1;
n=4,cnt=8;
n=5 cnt=35 (5*2+5*2+ 5+5+5);
n=6 cnt= 32 (6*2+6*2+ 6+2);
n=7,cnt=35 (7*2+7*2+7);
n=8, cnt=40 (8*2+8*2+8)
n>6;cnt=5*n;
AC代码:
1 #include<stdlib.h> 2 #include<stdio.h> 3 #include<string.h> 4 #define m 20121111 5 int main() 6 { 7 int t,n; 8 scanf("%d",&t); 9 int cas=1; 10 while(t--) 11 { 12 int ans; 13 scanf("%d",&n); 14 if(n<3) 15 ans = 0; 16 else if(n == 3) 17 ans = 1; 18 else if(n == 4) 19 ans = 8; 20 else if(n == 5) 21 ans = 35; 22 else if(n == 6) 23 ans = 32; 24 else 25 ans = 5*n; 26 printf("Case #%d: %d\n",cas++,ans%m); 27 } 28 return 0; 29 }
————Anonymous.PJQ