UVA
来源:互联网 发布:淘宝美工网上兼职接单 编辑:程序博客网 时间:2024/06/06 15:43
题目问,从长度1—n的木棍中选择若干条木棍,问能组成多少种三角形。
因为只能从1—n根木棍中选择3根,所以木棍的长度不能相同。
N的范围比较大,但我们发现这些问题之间有相似的地方。
比如说n=6的时候构成三角形的总数和n=5的时候构成三角形的总数,之间有联系。
只需要在之前的基础上加上一些边(考虑多一条6的情况)
通过找规律,发现每次需要加上cnt种情况,而cnt呈现规律。
+2 +2 +3 +3 +4 +4。。。这样就可以写出一个类似于动规的状态转移方程
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<functional>#define ll long longusing namespace std;ll dp[1000005];int main(){ll n;ll cnt;ll i,j,k;dp[4]=1;cnt=2;k=0; j=2;for(i=5;i<=1000000;i++){dp[i]=dp[i-1]+cnt;k++;cnt+=j;if(k%2==0&&k!=0){k=0;j++;}}while(scanf("%lld",&n)!=EOF){if(n<3)break;elseprintf("%lld\n",dp[n]);}}
阅读全文
0 0
- uva
- UVA
- UVA
- UVA
- uva
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- 捣鼓Raspberry Pi 3 (一)之安装Ubuntu Mate 16.04
- 12306自动刷票下单-查票下单
- react+redux+es6
- Vim快速学习
- 解决Word、Excel启动时提示向程序发送命令出现问题
- UVA
- java 自定义类似C++ Pair
- Java --- BigInteger
- C++字符串处理大集合
- SpringBoot配置MongoDB去掉_class字段
- ESP32源码下载、编译、烧录
- 织梦DedeCMS的include目录文件说明
- Struts2+Spring3+Hibernate4+Maven+EasyUI整合入门视频
- 11-Thrift_JavaScript的使用