题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5101

题意:给定一些集合,选择两个来自不同集合的数,加和大于k,问有多少种选择方案

答案=从所有数中选择的两个加和大于k的数的方案数-在同一个集合中选择的两个加和大于k的数的方案数

而对于同一个集合中选择的两个加和大于k的方案数是可以直接排序然后利用单调性快速统计出来的。

#include <cstdio>
#include <cstring>
#include <vector>
#include <algorithm>
#define LL __int64
using namespace std;int t;
int n,k;int main()
{scanf("%d",&t);while(t--){vector<int>q[1100];scanf("%d%d",&n,&k);for(int i=1; i<=n; i++){int m;scanf("%d",&m);for(int j=1; j<=m; j++){int x;scanf("%d",&x);q[i].push_back(x);q[0].push_back(x);}sort(q[i].begin(),q[i].end());}sort(q[0].begin(),q[0].end());LL ans=0;for(int i=1; i<=n; i++){for(int j=0; j<(int)q[i].size(); j++){int v=q[i][j];LL num1=q[0].end()-lower_bound(q[0].begin(),q[0].end(),k-v+1);LL num2=q[i].end()-lower_bound(q[i].begin(),q[i].end(),k-v+1);ans+=num1-num2;}}printf("%I64d\n",ans/2);}return 0;
}

hdu 5101(二分)相关推荐

  1. HDU 2389(二分最大匹配优化算法,Hopcroft-Carp)

    HDU 2389(二分最大匹配优化算法,Hopcroft-Carp) 题目链接: 大致题意; 您能帮助客人在下雨之前尽可能多地找到一把雨伞? 给定所有客人的位置和跑步速度,雨伞位置,到下雨开始时的时间 ...

  2. hdu 5248(二分+贪心)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5248 解题思路:这道题我原本的思路是动态规划,结果看到数很大,结果放弃了.然后想到二分,思路是对的,只 ...

  3. hdu 3622 二分+2-sat

    /* 二分+2-sat 题意:在一个二维平面上给你n个炸弹,和2*n个位置,每一行的两个位置仅仅能有一个放炸弹 如今炸弹爆炸有一个半径.当炸弹爆炸时两个炸弹的半径化成的圆不能相交,求最大半径 二分半径 ...

  4. hdu 4033 二分几何

    参考:http://blog.csdn.net/libin56842/article/details/26618129 题意:给一个正多边形内点到其他顶点的距离(逆时针给出),求正多边形的边长 二分多 ...

  5. hdu 4004 二分查找

    直接二分查找答案即可,我的判断函数没有像大牛们那样优化,但是过是没问题的~ /* * hdu4004/linux.cpp * Created on: 2011-9-4 * Author : ben*/ ...

  6. hdu 5265(二分+枚举)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5265 解题思路: 首先对每个数进行去模,这样得到的数就会是[0,p-1]的范围,接下来就是如何组合的问 ...

  7. hdu 3264(二分+圆相交面积)

    题意:给出一些圆,选择其中一个圆的圆心为圆心,然后画一个大圆,要求大圆最少覆盖每个圆的一半面积.求最小面积. 解题思路:首先枚举每个圆,以其圆心作为大圆的圆心,然后再用二分去寻找最小的半径. #inc ...

  8. hdu 5093 二分匹配

    /* 题意:给你一些冰岛.公共海域和浮冰,冰岛可以隔开两个公共海域,浮冰无影响 求选尽可能多的选一些公共海域点每行每列仅能选一个. 限制条件:冰山可以隔开这个限制条件.即*#*可以选两个 预处理: * ...

  9. hdu 1597 二分查找

    题目很容易理解,给定一个字符串,是有1-9字符组成,在里面1就是1:2就是12:3就是123:10就是1234567891.依次连接. 给定一个位数需要去确定这个位数上的数到底是几? 本题看似一个字符 ...

最新文章

  1. 嵌入式BootLoader技术内幕(三)
  2. c#c#继承窗体_C#继承能力问题和解答 套装5
  3. 【NetWebApi】接口参数传递笔记
  4. 面试必备!Kafka 怎么顺序消费?
  5. 用firework中合并图标的方法
  6. 腾达ap设置说明_优科 Ruckus R610 AC1900规格 无线AP 开箱拆解评测
  7. 软测工具Testbed的使用以及动态测试实例
  8. ASO学习——《ASO优化大师》笔记
  9. 解决python运行selenium程序执行完后,Chrome浏览器自动关闭的问题
  10. Nova 实现的 Fit Instance NUMA to Host NUMA 算法
  11. 【华为OD机试】1038 - 学英语
  12. mysql rds 主从_简单说说RDS的主从功能是如何实现
  13. 正则匹配空字符串 /(^\s)/
  14. FTP服务器的上传与下载
  15. 评分卡:WOE、IV、PSI计算及ROC和KS曲线
  16. PPT演示文稿放映时会议记录的技巧
  17. 获取秒懂百科视频地址/获取百度百科视频地址
  18. Echarts水波图实现
  19. 用编程求FFFF:0到FFFF:F字节型数据的和,结果存放在dx中
  20. 深富策略:关注风格的切换 等待压力的突破

热门文章

  1. 从方法到实践!深度解读:企业数据治理到底治什么?怎么治?
  2. 大连银行王丰辉:最大的浪、最大的坑、最大的未来(附 PPT 下载)
  3. HiveQL之Database相关操作
  4. Web服务器安全设置
  5. Polya原理的应用经典实例
  6. IOS 应用官方接口地址
  7. DataGrid内容的导出
  8. how to add one row in the dataframe?
  9. recurrence relation in parenthesis placing problem
  10. how can you understand the world