2015年8月12日 星期三

[Codeforces][559A][560C] A. Gerald's Hexagon

原題:http://codeforces.com/contest/559/problem/A
AC:http://codeforces.com/contest/559/submission/12473071

解題方向:數學


題目大意:有一個六邊形,皆為整數,且內角皆為$120^{\circ}$,問這圖形需要幾個邊長為$1$的正三角形組成 (一定給合法數值)。

解法:

對於旁邊的平行四邊形是$2$倍的邊長乘積,中間空下的正三角形邊長$P= \left |A-D  \right | = \left |B-E  \right | = \left |C-F \right | $ 就隨便選一個,所需要的三角形個數為$P^2$,全部加起來就好了。


#include<bits/stdc++.h>
using namespace std;

int main()
{
    int A,B,C,D,E,F;
    cin>>A>>B>>C>>D>>E>>F;
    cout<< 2*(A*B+C*D+E*F) + (A-D)*(A-D) <<'\n';
}

PS. 我覺得我好友的AC Code有夠醜 = =

2 則留言: