C~K要找女朋友了!!!
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
package pp;import java.util.*;class Person{String name, tel;int height, age;public Person(String name, int height, int age, String tel) {super();this.name = name;this.height = height;this.age = age;this.tel = tel;}@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 + ((tel == null) ? 0 : tel.hashCode());return result;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;Person other = (Person) 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 (tel == null) {if (other.tel != null)return false;} else if (!tel.equals(other.tel))return false;return true;}public String toString() {//按照实例输出return name + " " + height + " " + age + " " + tel;}}public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);while(sc.hasNext()) {int n = sc.nextInt();//几个人int a = sc.nextInt();int b = sc.nextInt();int c = sc.nextInt();int d = sc.nextInt();List<Person> list = new ArrayList<Person>();while(n-- != 0) {String name = sc.next();int height = sc.nextInt();int age = sc.nextInt();String tel = sc.next();if(age >= c && age <= d && height >= a && height <= b) {Person p = new Person(name, height, age, tel);if(!list.contains(p))//是否已经有相同的{list.add(p);}}}Collections.sort(list, new Comparator<Person>(){//匿名内部类进行排序public int compare(Person o1, Person o2){if(o1.height == o2.height){return o2.age - o1.age;//年龄从高到低输出}return o1.height - o2.height;//身高从低到高输出}});System.out.println(list.size());//个数Iterator<Person> it = list.iterator();while(it.hasNext()) {System.out.println(it.next());}}sc.close();}
}
C~K要找女朋友了!!!相关推荐
- Java 7-1 sdut-Collection-sort--C~K要找女朋友了! (10 分)
7-1 sdut-Collection-sort–C~K要找女朋友了! (10 分) 临近11.11,CK看见周围的朋友一个个的都脱单或者正准备脱单了,CK也想要找一个女朋友了(听说国家会分配?).M ...
- C~K要找女朋友了!!!_JAVA
Description 临近11.11,CK看见周围的朋友一个个的都脱单或者正准备脱单了,CK也想要找一个女朋友了(听说国家会分配?).MeiK听说了这件事情,表 示CK终于开悟了,所以他整理了一份候 ...
- SDUT-4100 C~K要找女朋友了!!!
Problem Description 临近11.11,C~K看见周围的朋友一个个的都脱单或者正准备脱单了,C~K也想要找一个女朋友了(听说国家会分配?).MeiK听说了这件事情,表 示C~K终于开悟 ...
- 2109 - 找女朋友
找女朋友 Description 山东理工大学有很多学生,当然也有很多美女,机械实验班的学委(外号:大王八)很想找个女朋友,但他想找个身高和自己相配的女生做女朋友,现有理工大N个美女的身高数据,但由于 ...
- 清华大学计算机系男女比v,清华男女生比例惊人,但找女朋友却不愁,这是为什么?...
对于学生来讲,十八九岁就是恋爱的年龄,由于上高中我们有升学的压力,所以到了大学以后,多数人都会轰轰烈烈谈一次恋爱,但对于理工科为主的大学来讲,由于男女比例严重失调,谈恋爱就成了一种奢侈.清华大学作为国 ...
- 由于找不到appvisvsubsystems32.dll_老实人就别找女朋友了 跟个老实人结婚有多累_新闻资讯...
连上去介绍自己的勇气都没有,每个月5000左右的工资,顶多也就会被当成备胎.回头一看,如何把自己包装成妹子想泡的男人?加我的私人微信,找个老实人就把自己嫁了吧.就剩下我一个人还单着,太多的伤害,安全交 ...
- 身为程序员就算月薪再高,想找女朋友的话这些你千万别做!
推荐阅读:程序员如何预防大龄危机 我的一位大学同学,现在三十了,还单着,也是跟我一样从事编程工作,昨天跟我一起吃饭,他向我诉苦,说他在一个APP被一个女孩歧视,他在APP上跟一位女孩聊天时,他聊到他月 ...
- 698. 划分为k个相等的子集:给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等。
题目描述 给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等. 示例 1: 输入: nums = [4, 3, 2, 3, 5, 2, 1], k ...
- 用计算机找女朋友,大学生必备远程软件:能找女朋友、玩游戏、赚零花钱
原标题:大学生必备远程软件:能找女朋友.玩游戏.赚零花钱 终于开学了,今年的假有点长,爽是爽就是想基友了,当然终于不用再看爸妈脸色行事,春节还是他们的儿子,到4.5月满脸嫌弃:7.8月整天唾弃,果然距 ...
最新文章
- linux 命令详解 二十二
- mysql 数据迁移_mysql实验--不同字符集数据库迁移步骤演示
- 每天一道LeetCode-----有序数组循环右移n位后,寻找最小值,数组中可能包含重复元素
- (转载)谈谈JS里的{ }大括号和[ ]中括号的用法,理解后就可以看懂JSON结构了。...
- 详解图示+例题演练——BF算法+KMP算法基本原理
- Golang——error处理及panic、recover使用的正确姿势
- android控件之间的过渡动画效果,Android - 交换控件位置:基于LayoutParams的瞬间交换与基于ObjectAnimator动画效果交换...
- python pil 模块将随机字符生成验证码
- (转)android之Fragment(官网资料翻译)
- 总结软考(软件设计师中级)——计算机语言基础的知识
- Marlin固件解析G代码部分分析
- 现在商业社会,跨界打劫随处可见,一家家政公司跨界疯狂赚钱模式!
- 面试软件测试总结(常见的面试问题)
- 使用jQuery实现旋转木马效果
- NOIP原题 斗地主(20190804)
- TDMS如何用Excel打开编辑
- 创业穷途,我要加入丐帮
- 广州积分入户需要满足哪些条件
- 学习日志0820类的继承
- raid5数据丢失后应该怎么做才能提高数据恢复成功率?