⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1396 counting triangles.cpp

📁 威士忌的HDU题解.大概有260多题的源码。对于学习非常有好处。
💻 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 + -