hihoCoder 1513: 小Hi的烦恼(五维偏序+bitset)
来源:互联网 发布:mac qq怎么发文件夹 编辑:程序博客网 时间:2024/06/05 04:52
#1513 : 小Hi的烦恼
时间限制:5000ms
单点时限:1000ms
内存限制:1024MB
- 样例输入
41 1 2 2 12 3 3 3 23 2 1 1 34 4 4 4 4
- 样例输出
0103
描述
小Hi从小的一大兴趣爱好就是学习,但是他发现尽管他认真学习,依旧有学神考的比他好。
小Hi在高中期间参加了市里的期末考试,一共五门:语文、数学、英语、物理、化学。
成绩出来之后,小Hi发现有些同学,所有科目都考的比他好,他很烦恼。所以他想知道所有科目都比自己名次靠前的同学的人数。
为了方便,可以认为不存在两个人某一门名次是相同的。
其他同学们也想知道有多少人全面碾压了他们,所以你需要对所有人输出答案。
解题方法提示
输入
第一行,一个正整数N(N <= 30000),表示人数。
接下来N行,每行五个整数,分别表示五门课依次的排名。
输出
输出共N行,每行一个整数,表示答案。
只有五门科目
b[x][y][z]=1表示第x个人第y科分数比第z个人的第y科分数要高
b[x][y][z]=0说明第x个人第y科分数比第z个人的第y科分数低
很明显若bet[x][1][z] & bet[x][2][z] & bet[x][3][z] & bet[x][4][z] & bet[x][5][z] = 1说明第z个人被第x个人完全碾压
不过想要求出所有的b[x][y][z],复杂度数O(n²)的,不过最后一维不是1就是0,所以可以用bitset
开个长度为n的二维bitset即可,最后答案就是(bet[x][1] & bet[x][2] & bet[x][3] & bet[x][4] & bet[x][5])中1的个数
#include<stdio.h>#include<bitset>using namespace std;int sc[6][30005];bitset<30005> ans, b[6][30005];int main(void){int n, i, j, x;scanf("%d", &n);for(i=1;i<=n;i++){for(j=1;j<=5;j++){scanf("%d", &x);sc[j][x] = i;}}for(i=1;i<=5;i++){for(j=2;j<=n;j++){b[i][sc[i][j]] = b[i][sc[i][j-1]];b[i][sc[i][j]][sc[i][j-1]] = 1;}}for(i=1;i<=n;i++){ans = b[1][i]&b[2][i]&b[3][i]&b[4][i]&b[5][i];printf("%d\n", ans.count());}return 0;}
阅读全文
1 0
- hihoCoder 1513: 小Hi的烦恼(五维偏序+bitset)
- Hihocoder 147周 小HI的烦恼 bitset(技巧)
- hihocoder 1513 小Hi的烦恼 五维数点求集合的交集 bitset用法
- 小Hi的烦恼 (bitset)
- HihoCoder #1513 : 小Hi的烦恼
- Hihocoder-小Hi的烦恼
- hihocoder 第147周 小Hi的烦恼 (bitset的使用)
- hihoCoder : 题目1 : 小Hi的烦恼(bitset应用 TODO: 待优化 )
- hihoCoder 1513 : 小Hi的烦恼 位运算好题
- #hiho1513 : 小Hi的烦恼 (bitset解决五维数点问题)
- #hiho1513 : 小Hi的烦恼 (bitset解决五维数点问题)
- Hihocoder-1545 小Hi和小Ho的对弈游戏(博弈)
- hiho一下 第147周 小Hi的烦恼
- hihocoder#1605 : 小Hi的生成树计数(矩阵快速幂)
- HihoCoder 1236 Scores (五维偏序bitset+分块)
- hihocoder#1570 : 小Hi与法阵
- HihoCoder-1236-Scores【bitset】【五维偏序】
- hihoCoder 1114 小Hi小Ho的惊天大作战:扫雷·一
- 锐捷校园网:小米mini路由刷Padavan固件实现wifi上网
- MySQL5.7 大大降低了半同步复制-数据丢失的风险
- CCF 2016-12 04编码(DP+哈夫曼树)
- mysql 分组、最新数据优先于group,分页同时处理
- codeforces 508E E. Arthur and Brackets(栈模拟+贪心+构造)
- hihoCoder 1513: 小Hi的烦恼(五维偏序+bitset)
- windows下构建 HotSpot 虚拟机编译环境
- [TensorFlow实战] 图片预处理
- PLSQL语法基础
- python绘制excel数据热力图
- 面试_注意事项
- ViewRootImpl 和 DecorView 分析
- POJ 3347 Kadj Squares 复杂的线段相交问题。这个题目是计算几何的扩大数据运算的典型应用 有时候扩大数据范围避免浮点误差,这个题就是应用
- 括号序列的最长合法子段