免单统计 
题目描述 
某商城举办了一个促销活动,如果某顾客是某一秒内早时刻下单的顾客(可能是多个人),则可以 获取免单。请你编程计算有多少顾客可以获取免单。
解答要求 时间限制:3000ms, 内存限制:64MB 输入 输入为n行数据,每一行表示一位顾客的下单时 间。 以(年-月-日 时-分-秒.毫秒)yyyy-MM-dd HH:mm:ss.fff形式给出。

0<n<50000 2000<yyyy<2020 0<MM<=12 0<dd<=28 0<=HH<=23 0<=mm<=59 0<=ss<=59 0<=fff<=999 所有输 入保证合法。
输出 输出一个整数,表示有多少顾客可以获取免单。
样例:
输入样例1
2019-01-01 00:00:00.001 
2019-01-01 00:00:00.002 
2019-01-01 00:00:00.003
输出样例1 

输入样例2
2019-01-01 08:59:00.123 
2019-01-01 08:59:00.123
2018-12-28 10:08:00.999 
输出样例2 
3

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;/*** 输入格式:yyyy-MM-dd HH:mm:ss.fff* 2019-01-01 08:59:00.123* 2019-01-01 08:59:00.123* 2018-12-28 10:08:00.999** 输出:3** 输入格式:yyyy-MM-dd HH:mm:ss.fff* 2019-01-01 08:59:00.123* 2019-01-01 08:59:00.123** 输出:2*/
public class MainClass {private static Integer n = 50000;public static void main(String[] args) {Scanner in = new Scanner(System.in);List<String> topDates = new ArrayList<>();int i = 0;while (in.hasNextLine()){String orderDate = in.nextLine();if(validateDate(orderDate)){topDates.add(orderDate);}i++;if(i>=n)break;}Integer topUserNum =  doGetTopUserNum(topDates);System.out.println(topUserNum);in.close();}public static Integer doGetTopUserNum(List<String> topDates){Integer topUser = 0;Map<String,String> map = new HashMap<>();if(topDates !=null &&topDates.size()!=0){for (String topDate:topDates) {String[] dateAndSec = topDate.split("\\.");String pre = dateAndSec[0];String suf = dateAndSec[1];putMinValueToMap(pre,suf,map);}for (Map.Entry<String,String> entry:map.entrySet()){StringBuffer stringBuffer = new StringBuffer();stringBuffer.append(entry.getKey()).append(".").append(entry.getValue());for (int i = 0; i < topDates.size(); i++) {if(stringBuffer.toString().equals(topDates.get(i))){topUser++;}}}}return topUser;}public static boolean validateDate(String date){Boolean validate = true ;SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");try {simpleDateFormat.parse(date);} catch (ParseException e) {validate = false;}return validate;}/*** 用map放取最小数据* @param datePreFix* @param datesufFix* @param map*/public static void putMinValueToMap(String datePreFix,String datesufFix,Map<String,String> map){Integer value = map.get(datePreFix)==null?null:Integer.valueOf(map.get(datePreFix));if(value==null){map.put(datePreFix,datesufFix);}else if(value.intValue() > Integer.valueOf(datesufFix).intValue()){map.put(datePreFix,datesufFix);}}
}

华为机试JAVA 免单统计相关推荐

  1. 【华为OD机试 】 免单统计(C++ Java JavaScript Python)

    华为od机试共有3道题,分值为100+100+200,总分为400分.考试时间 2.5h..每道题目都需要通过测试用例来得分,全通过则为满分.华为od机试是在牛客网上进行的,采用ACM模式.华为od机 ...

  2. od机考题目-免单统计-第10讲:高频真题解析 III(上)

    while 1:try:size = int(input())order_time = [input() for _

  3. 【华为机试真题 JAVA】免单统计-100

    [编程题目 |100分]免单统计 时间限制:C/C++ 1秒,其他语言 2秒 空间限制:C/C++262144K,其他语言524288K 64bit IO Format:%lld 本题可使用本地IDE ...

  4. 华为机试(JAVA)真题Od【A卷+B卷】

    各语言题库: [Python+JS+Java合集][超值优惠]:Py/JS/Java合集 [Python]:Python真题题库 [JavaScript]:JavaScript真题题库 [Java]: ...

  5. Java算法:华为机试算法(下),华为算法Java版,牛客网华为算法73~108题

    接上篇:Java算法:华为机试算法(中),华为算法Java版,牛客网华为算法55~72题   HJ73 计算日期到天数转换 计算日期到天数转换 题目描述 根据输入的日期,计算是这一年的第几天.. 测试 ...

  6. 牛客网--华为机试在线训练10:字符个数统计

    牛客网–华为机试在线训练10:字符个数统计 题目描述 编写一个函数,计算字符串中含有的不同字符的个数.字符在ACSII码范围内(0~127).不在范围内的不作统计. 输入描述: 输入N个字符,字符在A ...

  7. 【华为机试真题Java】从入门到入职-真题列表导读

    写在前面 本专栏有100+道题(持续更新中),都是往期的HW机试真题,根据过往同学的经验基本都会考到原题.大家有什么不懂的都可以留言. 华为机试有三道题目,第一道和第二道属于简单或中等题,分值为100 ...

  8. 《华为机试》刷题之HJ84 统计大写字母个数

    <华为机试>刷题之统计大写字母个数 我不知道将去向何方,但我已在路上! 时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! 题目: 找出给定字符串中大写字符(即'A'-' ...

  9. 【华为机试真题 Python实现】热点网站统计【2022 Q1 Q2 | 100分】

    文章目录 前言 题目描述 示例 1 参考代码 前言 <华为机试真题>专栏含牛客网华为专栏.华为面经试题.华为OD机试真题. 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您 ...

最新文章

  1. Jmeter连接Oracle数据库
  2. 088_html5表单属性
  3. 初步接触Oracle 11g(1)
  4. mysql 存储过程写入文件
  5. mysql 或hive left join不加关联条件
  6. redis设计与实现读书笔记(一)
  7. linux安装java步骤
  8. c语言实验报告1答案,郑州大学C语言实验报告答案
  9. 风控模型——评分卡模型
  10. 服务器后台运行程序(nohup/screen/tmux)
  11. 银行账户管理体系总结
  12. 数学系列 (二)自然数、分数、小数、算数、代数
  13. ios CAF音频转换为MP3
  14. linux常用指令词典
  15. 不同操作系统中的换行符,回车符 \r , \n
  16. 大裁员下,程序员如何做“副业”?
  17. 护眼灯真能保护眼睛吗?2022双十二买什么样的护眼灯对眼睛好
  18. 适配手机VR眼镜的VR视频播放器种类大全
  19. Java枚举类与注解——一篇文章读懂枚举类与注解
  20. 如何压缩视频文件大小?

热门文章

  1. 微信小程序 | 12.生命周期、globalData全局数据
  2. 伪代码模拟TranslateMessage内部实现
  3. 训练时正常,在验证时会爆显存的解决办法——with torch.no_grad():
  4. 图解Java中18把锁
  5. DWORD *类型的实参与SIZE_T *类型的形参不兼容,求指教
  6. linux 获取文件列数并转置行列
  7. iOS:沙盒之 Documents、Library、tmp、SystemData
  8. 手机通过USB3.0扩展坞也能连接到显示器、电视呢
  9. android二维码实现原理
  10. 《算法图解》学习笔记(四):分而治之和快速排序(附代码)