题意:输入一个数n,求由1~n这n个数能构成多少种三角形。
思路:穷举多个样例然后找到规律。
这里送上解题过程
代码如下:
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
#define INF 0x3f3f3f3f
LL a[1000005];
int main()
{
int n;
a[4]=1;LL sum=1,ans=1;
for(LL i=5;i<=1000000;i++)
{
a[i]=a[i-1]+ans+sum;
ans+=sum;
if(i%2) sum++;
}
while(~scanf("%d",&n))
{
if(n<3) break;
if(n==3) printf("0\n");
else printf("%lld\n",a[n]);
}
}
本文介绍了一种通过编程方式解决数学问题的方法:输入一个数n,求由1到n这n个数能构成多少种不同的三角形。通过观察规律并使用C++编程语言实现了求解算法。
441

被折叠的 条评论
为什么被折叠?



