您的位置:首页 > 其它

【暑假测试3】B CodeForces 560C

2015-08-03 22:21 183 查看

题意

给出图形的六边边长,求它包含了多少个三角形。

思路



如图,把任意图形补全成三角形,然后这个大三角形的三边分别为 (b0+b1+b2),(b2+b3+b4),(b0+b1+b2)。它包含的三角形刚好是 (b0+b1+b2)* (b2+b3+b4),然后再减去蓝色部分的三角形,分别是 b0 * b0,b2 * b2, b4 * b4。最后所得就是题目所求的三角形个数。

AC代码 *

#include <stdio.h>

int main() {
int b[6];
int sum;
while ( scanf("%d%d%d%d%d%d", &b[0], &b[1], &b[2], &b[3], &b[4], &b[5]) != EOF ) {
sum = 0;
sum += ( ( b[0] + b[1] + b[2] ) *  ( b[2] + b[3] + b[4]) );
sum -= ( b[0] * b[0] + b[2] * b[2] + b[4] * b[4] );
printf("%d\n", sum);
}
return 0;
}


* 注:在 HUST 的 Virtual Judge 上测试 AC
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: