刷题之单生狗和电话聊天狂人
admin
2024-04-18 20:45:22
0

目录

1、单生狗

1)题目

 2)题目解读

3)代码 

 2、电话聊天狂人

1)、题目

 2)代码解读

 3)代码


1、单生狗

1)题目

“单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。

输入格式:

输入第一行给出一个正整数 N(≤50000),是已知夫妻/伴侣的对数;随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔;之后给出一个正整数 M(≤10000),为参加派对的总人数;随后一行给出这 M 位客人的 ID,以空格分隔。题目保证无人重婚或脚踩两条船。

输出格式:

首先第一行输出落单客人的总人数;随后第二行按 ID 递增顺序列出落单的客人。ID 间用 1 个空格分隔,行的首尾不得有多余空格。

输入样例:

3
11111 22222
33333 44444
55555 66666
7
55555 44444 10000 88888 22222 11111 23333

输出样例:

5
10000 23333 44444 55555 88888

 2)题目解读

题目要求我们先输入一个数字N,然后再输入N对 夫妻/伴侣 的对数。还要输入一个数字M,然后再输入M个ID 号。我们需要判断这些ID号是否成对匹配N对 夫妻/伴侣 中的ID号。并输出其中未匹配的ID号数量及ID号,要求ID号按递增顺序输出。

3)代码 

import java.util.Arrays;
import java.util.HashMap;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n= Integer.parseInt(sc.nextLine());String[][] arr=new String[n][2];for (int i=0;i

 2、电话聊天狂人

1)、题目

给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。

输入格式:

输入首先给出正整数N(≤105),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。

输出格式:

在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人数。

输入样例:

4
13005711862 13588625832
13505711862 13088625832
13588625832 18087925832
15005713862 13588625832

输出样例:

13588625832 3

 2)代码解读

题目给我们n对通话记录的号码,要求我们找出通话最多的通话狂人,输出其号码和通话次数,要是有多个通话次数的通话狂人,就输出最小的号码和通话次数以及有多少个和他通话次数相同的人。我们可以使用HashMap储存,再进行排序,这道题就会变得非常简单。

 3)代码

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n= Integer.parseInt(sc.nextLine());HashMap map=new HashMap<>();//输入for (int i=0;i> list = new ArrayList<>(map.entrySet());//使用lambda表达式进行比较器传递//先比较该电话的拨打次数是否相同,降序排列//再比较电话号码打大小,降序排列list.sort((o1, o2) -> {if (o1.getValue().equals(o2.getValue())) {return o2.getKey().compareTo(o1.getKey());} else//重写排序规则,小于0表示升序,大于0表示降序return o2.getValue() - o1.getValue(); });int count=0;//保存拨打号码次数相同的数量int v=0;//第一次遍历无法比较,所有设置一个boolean判断区分boolean b=true;//区别一种特殊情况:是否全部号码拨打次数都一样boolean bb=true;String ss = null;//使用Iterator遍历list去找号码Iterator> inter = list.iterator();while(inter.hasNext()){Map.Entry item = inter.next();String key = item.getKey();int value = item.getValue();if (b){ss=key;v=value;count++;b=false;}else {//发现这个号码次数和上一个号码次数不同,即是最小号码//或者是次数最大的号码,然后再进行if判断 if (v!=value){bb=false;System.out.print(ss+" ");if (count==1){System.out.print(v);}else {System.out.print(count);}break;}ss=key;count++;}}//如果全部号码拨打次数相同,则输出if (bb){System.out.println(ss+" "+v+" "+map.size());}}
}

相关内容

热门资讯

女生平板推荐安卓系统,安卓系统... 亲爱的女生们,是不是正在为挑选一款适合自己的平板电脑而烦恼呢?别急,今天就来给你好好盘点一下市面上那...
怎么把安卓系统刷成wp系统 你有没有想过,把你的安卓手机换成Windows Phone系统,体验一下不一样的手机世界呢?别急,别...
怎么把安卓系统转入苹果,系统迁... 你有没有想过,把你的安卓手机换成苹果手机,体验一下那个传说中的流畅和优雅呢?没错,我就是来告诉你,怎...
中邮先锋安卓系统,引领智能通信... 你有没有发现,手机操作系统更新换代的速度简直就像坐上了火箭呢?这不,最近中邮先锋的安卓系统又来了一场...
mac能用安卓系统吗,探索跨平... 亲爱的果粉们,你是否曾有过这样的疑问:那台你心爱的Mac,能不能装上安卓系统呢?这个问题,估计不少M...
手机安装安卓系统1,引领智能生... 你有没有发现,现在手机的世界里,安卓系统就像是个超级明星,几乎无处不在呢!想象你手中的这部智能手机,...
导航安卓系统开机要多久,安卓系... 你有没有想过,每次打开你的安卓手机,那导航系统启动的时间到底有多长呢?是不是有时候等得有点不耐烦,心...
安卓系统app更新哪里更新系统... 你有没有发现,你的安卓手机最近总是跳出来提醒你更新app?别急,别急,让我来给你详细解析安卓系统ap...
安卓系统怎样关闭广告弹窗,安卓... 你是不是也被安卓手机上的广告弹窗折磨得头疼不已?别急,今天就来手把手教你如何关闭这些烦人的小东西,让...
可视门禁对讲系统安卓,安卓平台... 你有没有想过,家里的门禁系统也能变得这么酷炫?没错,就是那种一按按钮,门就能开,还能和你聊天的可视门...
安卓系统更换主屏幕图片,轻松美... 你有没有发现,手机的主屏幕图片可是我们日常使用中最能体现个性和心情的地方呢?今天,就让我来带你一起探...
苹果外观安卓系统的手机,探索跨... 你有没有发现,最近市面上出现了一种特别有意思的手机?它长得像苹果,却搭载了安卓系统,这究竟是怎么回事...
三星手机系统是安卓系统,深度解... 你有没有发现,每次拿出手机,那熟悉的界面和流畅的操作总让人忍不住多看几眼?没错,我要说的就是三星手机...
安卓拼接广告机系统,打造高效智... 你有没有想过,那些在商场、车站、甚至是街头巷尾随处可见的广告机,其实背后有着一套复杂的系统在支撑呢?...
安卓系统标签打印机 你有没有想过,家里的照片、孩子的画作、甚至是那些手写的情书,如果能够变成精美的实物,那该多好啊!今天...
iOS系统可以和安卓系统蓝牙吗... 你有没有想过,你的iPhone和安卓手机之间能不能来个“蓝牙之恋”呢?想象你用iPhone听歌,而安...
安卓4.4系统状态栏,功能与个... 你有没有发现,每次拿出手机,那个小小的状态栏总是默默无闻地躺在屏幕的顶部,却承载着那么多重要的信息?...
友联系安卓系统怎么装,友联系安... 你有没有想过,给安卓系统来个焕然一新的变身?别急,今天就来手把手教你如何安装友联系安卓系统,让你的手...
都哪个国家用安卓系统 说到安卓系统,这可是当今手机界的“网红”呢!你有没有想过,究竟都有哪些国家的小伙伴们在使用这个神奇的...
为什么安卓系统没有ios系统好... 你有没有想过,为什么安卓系统总是被说成没有iOS系统好呢?这背后可是有好多有趣的原因哦!让我们一起揭...