lightoj 1307 Counting Triangles | 二分/暴力
来源:互联网 发布:c盘windows有多大 编辑:程序博客网 时间:2024/06/05 18:15
题意:
给你N条边,问你能组成三角形的方法数。
思路:
判断三条边能否组成三角形,根据任意两条边的和大于第三边。
实际上,在确定A<=B<=C的情况下,只要A+B的和大于C即可认为ABC能组成三角形。
这题可以不用二分,用二分速度反而变慢了。排好序后乱搞就可以了。
AC代码:
#include <cstring>#include <cstdlib>#include <cstdio>#include <cmath>#include <iostream>#include <algorithm>#include <iomanip>using namespace std;const int MAXN = 2005;int a[MAXN];int main(){ ios::sync_with_stdio(false); int T, cas = 0; int n; cin>>T; while(T--) { cin>>n; for(int i = 0;i < n; i++) cin>>a[i]; // sort(a, a+n); long long cot = 0; for(int i = 0;i < n-2; i++) { int k = i; for(int j = i+1;j < n-1; j++) { while(k < n && a[i] + a[j] > a[k]) k++; cot += k-j-1; } } cout<<"Case "<<++cas<<": "<<cot<<endl; } return 0;}
0 0
- lightoj 1307 Counting Triangles | 二分/暴力
- lightoj 1307 Counting Triangles | 二分/暴力
- lightoj 1307 Counting Triangles (二分)
- 【LightOJ】1307 - Counting Triangles(二分)
- LightOj 1307 - Counting Triangles(二分)
- Lightoj 1307 Counting Triangles
- Light OJ:1307 Counting Triangles(二分+暴力枚举)
- lightoj-1307-Counting Triangles【思维】
- LightOJ 1307【暴力 二分】
- LIGHT OJ 1307 - Counting Triangles【二分枚举】
- LOJ 1307 - Counting Triangles(二分)
- 【light-oj】-’1307 - Counting Triangles(二分)
- light oj 1307 - Counting Triangles (二分--三角形个数)
- LOJ 1307 Counting Triangles
- 1307 - Counting Triangles
- Lightoj 1148 - Mad Counting (暴力分块)
- 【LightOJ】1058 - Parallelogram Counting(暴力计数)
- Counting Triangles
- 信号量和读写锁的区别
- 轻松搞定面试中的二叉树题目
- 解决此问题:07版WORD文档中的超链接、页码等变成了{HYPERLINK"网址"}、{PAGE}/{NUMPAGES}
- 帝国cms整合 ueditor
- 实例化子类之后发生了什么
- lightoj 1307 Counting Triangles | 二分/暴力
- 关于 CAmkES
- All in All
- 什么是 Bluetooth 个人区域网 (PAN)?
- [讲课]2-12 局部变量的特性
- 驱动学习日记2--文件操作系统调用
- spring中MessageSource的配置使用方法1
- spring中MessageSource的配置使用方法2--ReloadableResourceBundleMessageSource
- spring中MessageSource的配置使用方法3--ResourceBundleMessageSource