📄 1396 counting triangles.cpp
字号:
/*
1396 Counting Triangles
Time Limit : 1000 ms Memory Limit : 32768 K Output Limit : 256 K
GUN C++
*/
/*
边长为1的三角个数为n*n
总边长n(n>=2)中边长为m(m>=2)的正三角的个数为[ n-(m-1) ][ n-(m-2) ]/2个
倒三角可以看作是正三角的倒像
注意倒三角是增加2层才会出现边长增加的新倒三家情况
但是已经出现的倒三角形状是随层数增加而增加
总边长n(n>=4)中边长为m(m>=2)的倒三角的个数为[ n-(m-1) ][ n-(m-2) ]/2个
*/
#include <iostream.h>
using namespace std;
const int Max=1000;
int main()
{
int n,ca,ans,rn;
while(cin>>n)
{
ans=n*n;//边长为1的三角个数
for(ca=2;ca<=n;ca++)//边长为ca(ca>=2)的正三角的个数
{
ans+=(n-ca+1)*(n-ca+2)/2;
}
for(ca=4;ca<=n;ca+=2)//总边长为ca(ca>=2)的倒三角的个数
{
ans+=(n-ca+1)*(n-ca+2)/2;
}
cout<<ans<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -