Codeforces 559A Gerald's Hexagon 数三角形
Posted llguanli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces 559A Gerald's Hexagon 数三角形相关的知识,希望对你有一定的参考价值。
题意:按顺序给出一个各内角均为120°的六边形的六条边长,求该六边形能分解成多少个边长为1的单位三角形。
把单位三角形面积看做1,实际上就是求六边形面积。随便找六边形的三条互相不相邻的边,分别以这三条边为基础向外扩展一个等边三角形。就可以将原六边形补成一个大等边三角形,然后用大等边三角形面积减去补上的3个小等边三角形面积就是原来六边形的面积。
而等边三角形面积非常easy。就是边长的平方(实际就是边长为n的等边三角形能分解成n^2个边长为1的单位三角形,画个图就能理解了)。
#include <cstdio> #include <iostream> #include <cstring> #include <string> #include <cmath> #include <algorithm> #include <stack> #include <vector> #include <map> #include <set> using namespace std; int a, b, c, d, e, f; int main() { while(scanf("%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f) != EOF) printf("%d\n", (a + b + c)*(a + b + c) - (a*a + c*c + e*e)); return 0; }
以上是关于Codeforces 559A Gerald's Hexagon 数三角形的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces Round #313 (Div. 2) C - Gerald's Hexagon
Codeforces 559C Gerald and Giant Chess
打CF,学算法——二星级Codeforces Round #313 (Div. 2) B. Gerald is into Art(水题)