7-7 sdut-Collection(Map)-1 读中国载人航天史,汇航天员数量,向航天员致敬 (10 分)
java pta
1986年,中国实施“863”计划,航天技术列入其中。以载人飞船开始起步,最终建成我国的空间站。 1992年9月21日,中国实施载人航天工程,并确定了三步走的发展战略:第一步,发射载人飞船,建成初步配套的试验性载人飞船工程。第二步,突破载人飞船和空间飞行器的交会对接技术,利用载人飞船技术改装、发射一个空间实验室。第三步,建造载人空间站。
在长期的奋斗中,我国航天工作者不仅创造了非凡的业绩,而且铸就了特别能吃苦、特别能战斗、特别能攻关、特别能奉献的载人航天精神。载人航天精神,是“两弹一星”精神在新时期的发扬光大,是我们伟大民族精神的生动体现,永远值得全党、全军和全国人民学习。
截至2021年4月,历任航天英雄名字如下:
杨利伟(神舟五号)
费俊龙、聂海胜(神舟六号)
翟志刚、景海鹏、刘伯明(神舟七号)
景海鹏、刘旺、刘洋(神舟九号)
聂海胜、张晓光、王亚平(神舟十号)
景海鹏、陈东(神舟十一号)
会编程的小伙伴们,请以他们姓名中的拼音字母排序,统计一下航天英雄们出征太空的次数,以实际行动向航天员们致敬!
输入格式:
每次航天飞船的编号为一行读入数据,分别读入每次飞上太空的航天英雄的姓名,名字中间有若干个空格分隔。
最后一行为“end“,表示输入结束。
输出格式:
以他们姓名中的拼音字母排序,统计航天英雄们出征太空的次数。 每位航天员占一行,航天员姓名与出征次数中间有一个空格。
输入样例:
YangLiWei杨利伟
FeiJunLong费俊龙 NieHaiSheng聂海胜
Zhaizhigang翟志刚 JingHaiPeng景海鹏 LiuBoMing刘伯明
JingHaiPeng景海鹏 LiuWang刘旺 LiuYang刘洋
NieHaiSheng聂海胜 Zhangxiaoguang张晓光 WangYaPing王亚平
JingHaiPeng景海鹏 ChenDong陈东
end
输出样例:
ChenDong陈东 1
FeiJunLong费俊龙 1
JingHaiPeng景海鹏 3
LiuBoMing刘伯明 1
LiuWang刘旺 1
LiuYang刘洋 1
NieHaiSheng聂海胜 2
WangYaPing王亚平 1
YangLiWei杨利伟 1
Zhaizhigang翟志刚 1
Zhangxiaoguang张晓光 1
import java.util.*;
import java.util.Map.Entry;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
Map<String,Integer> mp=new TreeMap<String,Integer>();
String s=sc.next();
while(s.charAt(0)!='e'&&s.charAt(0)!='n'&&s.charAt(0)!='d') {
//System.out.println(s.charAt(0));
if(mp.containsKey(s)) {
mp.put(s, mp.get(s)+1);
}else {
mp.put(s, 1);
}
s=sc.next();
}
/*啊啊啊啊我这个憨批为什么会看成按次数排序啊啊啊啊
List<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(mp.entrySet());
Collections.sort(list,new Comparator<Map.Entry<String,Integer>>()
{
@Override
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
// TODO Auto-generated method stub
return o1.getValue().compareTo(o2.getValue());
}
} );
for(Map.Entry<String,Integer> mapping:list){
System.out.println(mapping.getKey()+" "+mapping.getValue());
} */
Iterator it=mp.entrySet().iterator();
while(it.hasNext()) {
Entry ex =(Entry)it.next();
System.out.println(ex.getKey()+" "+ex.getValue());
}
}
}