Codeforces Round #313 (Div. 1) Gerald's Hexagon
http://codeforces.com/contest/559/problem/A
题目大意:按顺序给出一个各内角均为120°的六边形的六条边长,求该六边形能分解成多少个边长为1的单位三角形。
解:
性质1:边长为n的正三角形能够划分成n*n个边长为1的正三角形。
绘图找规律
性质2:延长各边总能找到一个大的正三角形。而且所求等于大三角形减去三个补出来的三个三角形面积
收获:
以后先找规律,看能不能找出一些特征即使不会证明
其次,总的减去部分化为所求假设想求的难以直接求
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
inline int area(int a){
return a*a;
}
int main(){
int a,b,c,d,e,f;
scanf("%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f);
printf("%d\n",area(a+b+c)-(area(a)+area(e)+area(c)));
return 0;
}
posted on 2017-08-05 11:42 cynchanpin 阅读(142) 评论(0) 编辑 收藏 举报