uva 11401 Triangle Counting
来源:互联网 发布:券商手机炒股软件 编辑:程序博客网 时间:2024/04/29 18:04
f(n)表示在1~n的数列里取三个数,所能构成的不同三角形的个数,现在输入n求f(n)
这是白书上的一道例题。。。一般这种题都可以转换成递推的形式
f(n)=c(1)+c(2)+c(3).+....+c(n)
f(n)=f(n-1)+c(n)
所以关键是要求c(n)咯,c(n)就可以随便搞了。。我的c(n)和白书的思路不一样
#include<iostream>#include<sstream>#include<cstdio>#include<cstring>#include<cmath>#include<queue>#include<stack>#include<math.h>#include<map>#include<time.h>#include<set>#include<string>#include<vector>#include<algorithm>using namespace std;#define inf 0x7fffffff#define lc l,m,index<<1#define rc m+1,r,index<<1|1#define max_n 10000002#define mod 1000000007#define LL long longint n;LL dp[max_n];int main(){ dp[1]=dp[2]=dp[3]=0; for(LL i=4;i<=1000000;i++) { if(i%2==0) dp[i]=dp[i-1]+((i-2)*(i+4)-2*i)/4-i+3; else dp[i]=dp[i-1]+(i-3)*(i+3)/4-i+3; } while(~scanf("%d",&n) && n>=3) { printf("%lld\n",dp[n]); } return 0;}
0 0
- UVA 11401 Triangle Counting
- Uva 11401 - Triangle Counting
- UVA 11401 Triangle Counting
- UVA 11401 - Triangle Counting
- UVA 11401 - Triangle Counting
- uva 11401 - Triangle Counting
- UVA - 11401 Triangle Counting
- UVA 11401 Triangle Counting
- UVA - 11401 Triangle Counting
- uva 11401 Triangle Counting
- UVa 11401 Triangle Counting
- uva 11401 Triangle Counting
- UVa 11401 - Triangle Counting
- UVA 11401Triangle Counting
- UVA 11401:Triangle Counting
- UVa 11401 Triangle Counting
- UVA 11401 Triangle Counting
- UVA 11401-Triangle Counting
- Aerospike-Architecture系列之数据管理概述
- JNDI
- 31-迭代输出Map集合中的元素信息
- java中日期与字符串之间的相互转换
- CocoaPods的安装和使用
- uva 11401 Triangle Counting
- hdu1181
- C++数据 结构--------队列Queue ==优先队列
- jsp页面刷新时,保持滚动条位置不变
- 抽象基类
- 黑马程序员——[OC]01-OC的初步认识(简单程序)
- POJ 1308 Is it a tree
- vs2012 调试注意事项
- 常用网页头部meta标签收集和整理