给出N条边,问这些边能组成多少个不同的三角形,每条边的长度是不同的。首先我们先

将边长按照升序排序,然后枚举两条短的边,看最长边有多少种可能,累加。

#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
using namespace std;const int MAXN = 2012;
int T, N;
int a[MAXN];int b_s( int len)
{int left = 0, right = N - 1;while( left < right) {int mid = ( left + right + 1) >> 1;if( a[mid] >= len)right = mid - 1;elseleft = mid;}return left;
}int cal()
{int cnt = 0;for( int i = 0; i < N; i ++)for( int j = i + 1; j < N; j ++) {int len = a[j] + a[i];int pos = b_s( len);cnt += (pos - j);}return cnt;
}int main()
{scanf( "%d", &T);for( int cas = 1; cas <= T; cas ++){scanf( "%d", &N);for( int i = 0; i < N; i ++)scanf( "%d", &a[i]);sort( a, a + N);int ans = cal();printf( "Case %d: %d\n", cas, ans);}return 0;
}

转载于:https://www.cnblogs.com/Yu2012/archive/2012/04/23/2466107.html

ACdream OJ 1140 Counting Triangles相关推荐

  1. Counting Triangles

    Counting Triangles 题意: 给你一个完全图,每个边被赋值为0或1,问这个完全图中有多少个完美三角形? 完美三角形定义:三角形的三边都为0或1 题解: 正着求不好求,我们可以倒着想 不 ...

  2. 湖南中医药大学OJ—1140到1149

    目录 1140: 例题4-1 一元二次方程求根 1141: 例题4-2 比较交换实数值 1142:例题4-3 比较交换3个实数值,并按序输出 1143: 例题4-4 大写字母转换为小写字母 1144: ...

  3. uva 12426 Counting Triangles 计算几何

    题意:给一个凸多边形,求以凸多边形的顶点为顶点的三角形中,有多少个面积小于给定数值K? 思路:旋转卡壳+二分答案 时间复杂度:n^2logn 1 #include<iostream> 2 ...

  4. Leet Code OJ 338. Counting Bits [Difficulty: Medium]

    题目: Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate ...

  5. 杭电OJ分类题目(3)

    原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(3) HDU Computational Ge ...

  6. 杭电oj题目题型分类(转)

    1001 整数求和 水题 1002 C语言实验题--两个数比较 水题 1003 1.2.3.4.5... 简单题 1004 渊子赛马 排序+贪心的方法归并 1005 Hero In Maze 广度搜索 ...

  7. 杭电OJ题目分类(转载)

    1001 整数求和 水题 1002 C语言实验题--两个数比较 水题 1003 1.2.3.4.5... 简单题 1004 渊子赛马 排序+贪心的方法归并 1005 Hero In Maze 广度搜索 ...

  8. HD OJ 题目分类

    动态规划:2037 2054 2084 hdu题目分类(转) http://blog.csdn.net/vsooda/article/details/7258791 1001 整数求和 水题 1002 ...

  9. HDOJ题目分类大全

    版权声明:本文为博主原创文章,欢迎转载,转载请注明本文链接! https://blog.csdn.net/qq_38238041/article/details/78178043 杭电里面有很多题目, ...

最新文章

  1. Linux环境编译安装Mysql以及PHP中文乱码解决
  2. ios超级签名_ios超级签名何以固若金汤?原因在这里
  3. storyboard放大与缩小
  4. 关于 spring-aop理解
  5. Java经典逻辑编程题(不死神兔问题)
  6. linux系统中scanf函数,Linux下scanf宽度控制问题
  7. C#对多态性的两种支持
  8. 罗永浩确认12月初开发布会 不是手机也不是电子烟
  9. 基于OpenCV实现图像平移
  10. 03-26 网络流量分析
  11. html透明度_iMac下制作含透明度图片及判断图片透明度
  12. 开发ASP.NET下的MP3小偷程序
  13. Asp.net自定义控件开发任我行(4)-ViewState保存控件状态
  14. 音乐播放器 歌词同步滚动功能实现
  15. ZigBee网络数据传递流程_基于ZigBee远程通信的水质监测系统设计
  16. Spring的配置项aspectj-autoproxy
  17. 未知的类型名‘ulong_t’解决
  18. c 语言字体怎么改,Notepad++设置字体语言格式方法介绍
  19. Fidder汉化版使用
  20. 好书推荐.Philosophy.沉默的大多数

热门文章

  1. 如何在64位win7下通过ODAC来访问Oracle服务器
  2. ASP.NET Core EFCore 之Code First
  3. jmeter 正则获取参数集合和ForEach控制器结合使用(转)
  4. UVa122-Trees on the level
  5. Node.js 把图片流送到客户端
  6. shell-sed命令详解(转)
  7. Linux之压缩与解压缩
  8. Java网络编程实例---------------------------------基本HTTP客户端及服务端多线程
  9. FirstApp,iphone开发学习总结7,相机
  10. 常用的CSS属性的英文单词总结及用法、解释