#1513 : 小Hi的烦恼

时间限制:5000ms
单点时限:1000ms
内存限制:1024MB

描述

小Hi从小的一大兴趣爱好就是学习,但是他发现尽管他认真学习,依旧有学神考的比他好。

小Hi在高中期间参加了市里的期末考试,一共五门:语文、数学、英语、物理、化学。

成绩出来之后,小Hi发现有些同学,所有科目都考的比他好,他很烦恼。所以他想知道所有科目都比自己名次靠前的同学的人数。

为了方便,可以认为不存在两个人某一门名次是相同的。

其他同学们也想知道有多少人全面碾压了他们,所以你需要对所有人输出答案。

解题方法提示

输入

第一行,一个正整数N(N <= 30000),表示人数。

接下来N行,每行五个整数,分别表示五门课依次的排名。

输出

输出共N行,每行一个整数,表示答案。

样例输入

4
1 1 2 2 1
2 3 3 3 2
3 2 1 1 3
4 4 4 4 4
样例输出
0
1
0
3

只有五门科目

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;
}

hihoCoder 1513: 小Hi的烦恼(五维偏序+bitset)相关推荐

  1. hihocoder#1513 : 小Hi的烦恼

    写一发暴力求五维偏序 其实道理也简单,就是对于每个维记录那些点比当前点小,最后每个维and一下就好 bitset优化下 #include<cstdio> #include<iostr ...

  2. HihoCoder 1513 : 小Hi的烦恼

    描述 小Hi从小的一大兴趣爱好就是学习,但是他发现尽管他认真学习,依旧有学神考的比他好. 小Hi在高中期间参加了市里的期末考试,一共五门:语文.数学.英语.物理.化学. 成绩出来之后,小Hi发现有些同 ...

  3. bzoj1935 [Shoi2007]Tree 园丁的烦恼 二维偏序

    其实这个题就是一个二维偏序,注意不要往树套树上想了 用容斥求出4个点的偏虚前缀和 保证y<要求点 ,就按y排序,分别处理每个询问点 保证x>要求点,就树状数组求前缀和 码: #includ ...

  4. CDQ分治嵌套模板:多维偏序问题

    CDQ分治2 CDQ套CDQ:四维偏序问题 题目来源:COGS 2479 偏序 #define LEFT 0 #define RIGHT 1struct Node{int a,b,c,d,bg;}; ...

  5. 第四维、第五维空间狂想

    前言 避免拷贝,声明下,作者我的英文名叫wavky.wand,本博文原始地址是http://www.cnblogs.com/wavky/p/hyperspace.html 这篇随笔叫狂想,原因是这里写 ...

  6. 沟通技巧-《好好说话》书中的精髓:掌握沟通、说服、谈判、演讲、辩论的五维话术,让你在任何场景下,都能做到处变不惊,学会说话这个技术活。

    <好好说话>书中的精髓:掌握沟通.说服.谈判.演讲.辩论的五维话术,让你在任何场景下,都能做到处变不惊,学会说话这个技术活. 相信在生活中,每个人都可能因为不会说话遇到一些困难: 工作辛苦 ...

  7. 程序员小sister的烦恼_快速上手大数据ETL神器Kettle(xls导入mysql)

    我正在参加年度博客之星评选,请大家帮我投票打分,您的每一分都是对我的支持与鼓励. 2021年「博客之星」参赛博主:Maynor大数据 https://bbs.csdn.net/topics/60395 ...

  8. 学术-物理-维空间:五维空间

    ylbtech-学术-物理-维空间:五维空间 五维空间 时间一维.层次一维.传统三维空间统一的空间.五维空间是宇宙任何事物存在的基本属性. 五维空间是一个包含五个维度的空间. 以物理学的角度来说,五维 ...

  9. matlab 混沌信号,基于五维混沌系统的图像加密方法

    大家都知道混沌信号作为加密信号源,可以应用于图像加密,文本文件加密,语音加密,系统加密等诸多领域,那么接下来,我给大家介绍一种基于五维混沌系统的图像加密方法,该方法不仅可以实现对图像加密,而且与其它加 ...

最新文章

  1. php函数的实现原理及性能分析
  2. linux配置文件为yum,Linux系统配置本地yum源
  3. SEO:如何做好软文推广
  4. (十三)真题模拟【告诉你答案是什么】
  5. Cannot resolve method ‘call(java.lang.String, org.apache.flink.table.api.ApiExpression)‘
  6. 【LeetCode笔记】124. 二叉树中的最大路径和(Java、二叉树、DFS)
  7. 求多个数的最小公倍数
  8. MySQL(基础技能)
  9. android 两列菜单,【Android】实战开发之ListView同一个item显示2列的实现方法(仿2列商品列表)...
  10. 推荐一个Oracle数据库学习网站
  11. 行为主义心理学在游戏领域的10年发展
  12. c语言乐谱编辑软件怎么用的,雅乐简谱这个软件怎么使用?
  13. 【渝粤教育】电大中专液压与气动技术_1作业 题库
  14. Apache CarbonData学习资料汇总
  15. 嵌入式系统开发-麦子学院(14)- uboot详解(1)
  16. 伦敦国王学院计算机申请要求,2020年伦敦国王学院高级计算机专业研究生申请条件及世界排名|学费介绍...
  17. maven中的命令行命令
  18. DataTable列自定义渲染切页无效重绘
  19. 《西游记》中真假美猴王的分析
  20. 甲骨文献相关资料持续分享

热门文章

  1. python常用代码大全-Python常用库大全,看看有没有你需要的
  2. python编程入门教程下载-《Python编程从入门到精通》PDF高清完整版-PDF下载
  3. python入门指南by-Python 入门指南
  4. python处理excel的优势-SAS、R、SPSS、python、excel五大软件的比较优势分析
  5. 零基础学python-从0开始学Python,0基础小白
  6. 两个水平排列的div顶部对齐~详细
  7. vue.config.js代理配置失效 如何解决
  8. BOM——window对象
  9. vscode设置templates_Vscode中快速创建自定义代码模板的方法
  10. 在HTTPS安全页面中加载HTTP不安全的内容,如何绕过安全警告?