Problem Description

临近11.11,C~K看见周围的朋友一个个的都脱单或者正准备脱单了,C~K也想要找一个女朋友了(听说国家会分配?)。MeiK听说了这件事情,表
示C~K终于开悟了,所以他整理了一份候选人名单给C~K。可是C~K心里有自己心动女生的身高区间和年龄限制,所以他想把符合条件的女生
的信息(即符合[身高最小值,身高最大值]闭区间和[年龄最小值,年龄最大值] 闭区间的女生都算符合条件)给筛选出来,但是这可是难住了C~K,事关C~K的幸福,你能帮帮他吗?
ps:由于MeiK比较傻,所以名单里可能会有重复的女生的信息,若信息重复,则第一次输入为有效信息。

Input

第一行输入MeiK的候选人名单里有N个人(N<100000)。
第二行输入四个整数a,b,c,d。分别表示C~K心动女生的身高的最小值和最大值,年龄的最小值和最大值。(题目保证a<=b,c<=d)
接下来输入N行,每行表示一个女生的信息(姓名,身高,年龄,联系方式)

ps:联系方式不超过11个字符。

Output

第一行输出一个n,表示符合条件的女生的数量。
接下来的n行,每一行输出一个符合条件的女生的信息。
输出顺序按身高从低到高排序,若身高相同,则按年龄从高到底排序,若年龄也相同,则按照输入顺序输出。

Sample Input

4
160 170 20 22
女神1 161 19 11111
女神2 167 20 22222
女神2 167 20 22222
女神3 163 21 33333

Sample Output

2
女神3 163 21 33333
女神2 167 20 22222
import java.util.*;
class Girl
{String name;int height;int age;String telephone;public Girl(String name, int height, int age, String telephone) {super();this.name = name;this.height = height;this.age = age;this.telephone = telephone;}@Overridepublic String toString() {return  name + " " + height + " " + age + " " + telephone;}@Overridepublic int hashCode() {final int prime = 31;int result = 1;result = prime * result + age;result = prime * result + height;result = prime * result + ((name == null) ? 0 : name.hashCode());result = prime * result + ((telephone == null) ? 0 : telephone.hashCode());return result;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;Girl other = (Girl) obj;if (age != other.age)return false;if (height != other.height)return false;if (name == null) {if (other.name != null)return false;} else if (!name.equals(other.name))return false;if (telephone == null) {if (other.telephone != null)return false;} else if (!telephone.equals(other.telephone))return false;return true;}
}
public class Main {public static void main(String[] args){  Scanner in = new Scanner(System.in);int n = in.nextInt();int a = in.nextInt();int b = in.nextInt();int c = in.nextInt();int d = in.nextInt();Set<Girl> set = new HashSet<Girl>();for(int i = 0; i < n; i++){String name = in.next();int height = in.nextInt();int age = in.nextInt();String telephone = in.next();if(height >= a && height <= b && age >= c && age <= d){Girl girl = new Girl(name, height, age, telephone);set.add(girl);}}ArrayList<Girl> list = new ArrayList<Girl>(set);Collections.sort(list, new Comparator<Girl>() {@Overridepublic int compare(Girl o1, Girl o2) {int r1 = o1.height - o2.height;if(r1 != 0){return r1;}else{return o2.age - o1.age;}}});System.out.println(list.size());for(Girl girl:list){System.out.println(girl);}in.close();}
}

SDUT-4100 C~K要找女朋友了!!!相关推荐

  1. Java 7-1 sdut-Collection-sort--C~K要找女朋友了! (10 分)

    7-1 sdut-Collection-sort–C~K要找女朋友了! (10 分) 临近11.11,CK看见周围的朋友一个个的都脱单或者正准备脱单了,CK也想要找一个女朋友了(听说国家会分配?).M ...

  2. C~K要找女朋友了!!!_JAVA

    Description 临近11.11,CK看见周围的朋友一个个的都脱单或者正准备脱单了,CK也想要找一个女朋友了(听说国家会分配?).MeiK听说了这件事情,表 示CK终于开悟了,所以他整理了一份候 ...

  3. C~K要找女朋友了!!!

    Problem Description 临近11.11,C~K看见周围的朋友一个个的都脱单或者正准备脱单了,C~K也想要找一个女朋友了(听说国家会分配?).MeiK听说了这件事情,表 示C~K终于开悟 ...

  4. 找女朋友 SDUT(2109)

    找女朋友 Time Limit: 15ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 山东理工大学有很多学生,当然也有很多美女,机械实验班的学委(外号:大王八)很 ...

  5. 2109 - 找女朋友

    找女朋友 Description 山东理工大学有很多学生,当然也有很多美女,机械实验班的学委(外号:大王八)很想找个女朋友,但他想找个身高和自己相配的女生做女朋友,现有理工大N个美女的身高数据,但由于 ...

  6. 清华大学计算机系男女比v,清华男女生比例惊人,但找女朋友却不愁,这是为什么?...

    对于学生来讲,十八九岁就是恋爱的年龄,由于上高中我们有升学的压力,所以到了大学以后,多数人都会轰轰烈烈谈一次恋爱,但对于理工科为主的大学来讲,由于男女比例严重失调,谈恋爱就成了一种奢侈.清华大学作为国 ...

  7. 由于找不到appvisvsubsystems32.dll_老实人就别找女朋友了 跟个老实人结婚有多累_新闻资讯...

    连上去介绍自己的勇气都没有,每个月5000左右的工资,顶多也就会被当成备胎.回头一看,如何把自己包装成妹子想泡的男人?加我的私人微信,找个老实人就把自己嫁了吧.就剩下我一个人还单着,太多的伤害,安全交 ...

  8. 身为程序员就算月薪再高,想找女朋友的话这些你千万别做!

    推荐阅读:程序员如何预防大龄危机 我的一位大学同学,现在三十了,还单着,也是跟我一样从事编程工作,昨天跟我一起吃饭,他向我诉苦,说他在一个APP被一个女孩歧视,他在APP上跟一位女孩聊天时,他聊到他月 ...

  9. 698. 划分为k个相等的子集:给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等。

    题目描述 给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等. 示例 1: 输入: nums = [4, 3, 2, 3, 5, 2, 1], k ...

最新文章

  1. python中标识符下划线用作开头_python python中那些双下划线开头的那些函数都是干啥用用的...
  2. 前端一HTML:二: html开发工具
  3. DB2 乱码
  4. iOS中有两种支持机制:Notification和KVO(Key-Value Observing)
  5. LeetCode 1942. 最小未被占据椅子的编号(set)
  6. Linux下载cfg命令,Linux安装详解-配置ks.cfg实现自动安装过程
  7. 投递简历得不到回复,并不是你的简历不好,可能是这个原因
  8. sas数据集怎么导出_SAS学习--导入导出文件、拼表、数据集筛选
  9. 酒店房间登记与计费管理系统《c语言课程设计》 文库,C语言课程设计--酒店房间登记与计费管理系统程序代码...
  10. 智能android电视更换播放器,GitHub - qfwc258/TvPlayer: android智能电视播放器,可以播放各电视台节目,播放基于ijkplayer的实现。...
  11. lodop转到其他html页面,vue项目中使用Lodop实现批量打印html页面和pdf文件
  12. axure源文件_Axure函数应用:指示线跟随地图所选区域,并展示相应数据可视化...
  13. 解决斑马打印机打中文的问题
  14. http的ssl证书保姆级配置安装-多域名 免费ssl证书 解析 nginx配置
  15. C语言实现简易五子棋
  16. 项目管理工具之甘特图
  17. Office 365导出PDF带备注页
  18. python快速实现简易俄罗斯方块小游戏
  19. 双功能交联剂丨Lumiprobe 磺基花青7二羧酸研究
  20. 赛博朋克元素HUD霓虹发光科技元素ae模板

热门文章

  1. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.my.mapper.UserM
  2. 定了!《西安千古情》将于6月22日亮相浐灞!
  3. 《MA‑CRNN: a multi‑scale attention CRNN for Chinese text line recognition in natural scenes》论文阅读
  4. isis-概述及实验
  5. HTTPS升级配合HSTS打造顶级安全网站
  6. 陌生人社交网络大起底:谁是下一个陌陌?
  7. vnc连接不上解决问题方法
  8. kylin打开Dashboard教程
  9. 鸡和兔关在一个笼子里,鸡有2只脚,兔有4只脚,没有例外。已知现在可以看到笼子里m个头和n只脚,求鸡和兔子各有多少只?(输出一组数据)
  10. 2、es索引创建及查询