hiho147周 - 数据结构 bitset
n个5维数,对于每个数,输出小于他的数的个数(每个维度都比他小);
#include <cstdio>
#include <cstring>
#include <bitset>
#include <vector>
#include <algorithm>
using namespace std;
const int N = ;
struct Node{
int id;
int a,b,c,d,e;
static bool sortByA(const Node &x,const Node &y){
return x.a<y.a;
}
static bool sortByB(const Node &x,const Node &y){
return x.b<y.b;
}
static bool sortByC(const Node &x,const Node &y){
return x.c<y.c;
}
static bool sortByD(const Node &x,const Node &y){
return x.d<y.d;
}
static bool sortByE(const Node &x,const Node &y){
return x.e<y.e;
}
};
vector<Node> data[];
bitset<N> bs[N][];
int n;
int main(){
for(int i=;i<;i++) data[i].resize(N);
scanf("%d",&n);
for(int i=;i<n;i++){
Node tmp;
scanf("%d%d%d%d%d",&tmp.a,&tmp.b,&tmp.c,&tmp.d,&tmp.e);
tmp.id = i;
for(int j=;j<;j++)
data[j][i] = tmp;
}
std::sort(data[].begin(),data[].begin()+n,Node::sortByA);
std::sort(data[].begin(),data[].begin()+n,Node::sortByB);
std::sort(data[].begin(),data[].begin()+n,Node::sortByC);
std::sort(data[].begin(),data[].begin()+n,Node::sortByD);
std::sort(data[].begin(),data[].begin()+n,Node::sortByE);
for(int j=;j<;j++){
bitset<N> curstate;
curstate.set(data[j][].id);
for(int i=;i<n;i++) {
int curId = data[j][i].id;
bs[curId][j]|=curstate;
curstate.set(curId);
}
}
for(int i=;i<n;i++){
for(int j=;j<;j++) bs[i][]&=(bs[i][j]);
printf("%d\n",bs[i][].count());
}
return ;
}
hiho147周 - 数据结构 bitset的更多相关文章
- hiho149周 - 数据结构 trie树
题目链接 坑点:accept和deny的ip可能相同,需加个判断 #include <cstdio> #include <cstdlib> #include <vecto ...
- 疯狂位图之——位图实现12GB无重复大整数集排序
<Programming Pearls>(编程珠玑)第一章讲述了如何用位图排序无重复的数据集,整个思想很简洁,今天实践了下. 一.主要思想 位图排序的思想就是在内存中申请一块连续的空间作为 ...
- 写在SDOI2016Round1前的To Do List
理性的整理了一下自己的不足. 计算几何啥都不会,字符串类DP毫无练习,数据结构写的不熟,数论推不出式子,网络流建模常建残: 需要达成的任务: 一.网络流: 熟练网络流的板子(之前一直仰慕zkw费用流, ...
- 简化布隆过滤器——BitMap
简化布隆过滤器--BitMap 前言 前段开发项目试就发现,一部分的代码实现存在着一些性能上的隐患.但当时忙于赶进度和由于卡发中的不稳定因素,想了许多解决方案也没有机会实施.最近,正好趁个机会进行一系 ...
- SPLAY,LCT学习笔记(一)
写了两周数据结构,感觉要死掉了,赶紧总结一下,要不都没学明白. SPLAY专题: 例:NOI2005 维修数列 典型的SPLAY问题,而且综合了SPLAY常见的所有操作,特别适合新手入门学习(比如我这 ...
- BZOJ NOIP提高组十连测第一场
今天的题目一共拿了$180$分,感觉自己还是太菜了,二三两题只能骗到部分分 1.$String\ Master$ 题目大意:有两个字符串,在允许k次失配的情况下,求最长公共子串的长度 没什么好讲,直接 ...
- 谁手握账本?趣讲 ZK 的内存模型
本文作者:HelloGitHub-老荀 Hi,这里是 HelloGitHub 推出的 HelloZooKeeper 系列,免费开源.有趣.入门级的 ZooKeeper 教程,面向有编程基础的新手. 本 ...
- lucene底层数据结构——底层filter bitset原理,时间序列数据压缩将同一时间数据压缩为一行
如何联合索引查询? 所以给定查询过滤条件 age=18 的过程就是先从term index找到18在term dictionary的大概位置,然后再从term dictionary里精确地找到18这个 ...
- Java数据结构: java.util.BitSet源码学习
接着上一篇Blog:一道面试题与Java位操作 和 BitSet 库的使用,分析下Java源码中BitSet类的源码. 位图(Bitmap),即位(Bit)的集合,是一种常用的数据结构,可用于记录大量 ...
随机推荐
- updatefile.sh - Linux下代码更新脚本
以下写的是一个关于文件上传的代码shell脚本 该篇文章主要有下面几个方面的考虑: 1.文章主要用于在Linux下代码包批量上传: 2.将被覆盖的代码备份做备份,用于兴许做问题查看或者代码的回退(回退 ...
- yolo环境配置
主要配置参考官网https://pjreddie.com/darknet/yolo/ 为了能够可视化,另安装cuda+opencv cuda版本为9.0 opencv版本为3.1.0 先安装cuda再 ...
- OEM12C(12.1.0.5)安装插件监控mysql(linux)
目录结构: 文章参考论坛:https://blog.csdn.net/u010719917/article/details/78128200 环境说明: oms:12.1.0.5 os:centos ...
- 【参考】IBM sun.io.MalformedInputException and text encoding conversions transforms numerals to their word equivalents - United States
Problem(Abstract) When converting contents from a file or string using WebSphere Application Server, ...
- js判断数据类型方法
//一般js中我们判断数据类型 都使用typeof 这里采用 Object.prototype.toString function type (val) { return Object.prototy ...
- STM8S103内存详析
STM8S103的RAM有1k,0x00-0x3FF(RAM和ROM统一编址),其中0x200-0x3ff共512个字节默认为堆栈,剩余的低端512个字节又分为了Zero Page和剩余的RAM(简称 ...
- jq 鼠标点击跳转页面后 改变点击菜单的样式代码
点击菜单跳转页面,然而跳转后的页面字体并没有加粗用如下代码 <div class="bg01 menu"> <img class="img01" ...
- 前端换行显示,后端返回<br>
- textarea统计字数
开发项目中经常会用到,textarea统计字数 源码如下: <!DOCTYPE html><html lang="en"><head> < ...
- [HDU5687]2016"百度之星" - 资格赛 Problem C
题目大意:有n个操作,每个操作是以下三个之一,要你实现这些操作. 1.insert : 往字典中插入一个单词2.delete: 在字典中删除所有前缀等于给定字符串的单词3.search: 查询是否在字 ...