牛客网——美团2024届秋招笔试第三场编程真题

牛客网——美团2024届秋招笔试第三场编程真题

  • 😍😍😍 相知
  • 🙌🙌🙌 相识
  • 😢😢😢 开始刷题
    • 1. 平均数为k的最长连续子数组
    • 2. 小球投盒
    • 3. 小红结账
    • 4. 小美的游戏
    • 5. 小美种果树
    • 6. 小美的数组重排
    • 7. 判断ip地址是否合法

在这里插入图片描述

😍😍😍 相知

刷题不要一上来就直接干,先看题,明白题说的什么意思,然后想一下用什么现成的算法和数据结构可以快速解决,如果还是无从下手,建议先去看视频,不要直接翻评论或官方代码实现,看完视频,自己在idea中模拟敲几遍代码,如果跑通了,先别急着上leetcode黏贴,而是再回顾一下要点,然后确定自己完全懂了后,在leetcode中手敲,注意是手敲下来!!! 目前我就是采用的这种方法,虽然慢,但是可以维持一周忘不掉它,如果要想长期不忘,只能隔段时间就review一下了,就算是大牛,知道方法,长时间不碰,也不可能保证一次到位把代码敲完一遍过!!!

🙌🙌🙌 相识

本阶段我们要一起学习的是美团2024届秋招笔试第三场编程真题!!!

😢😢😢 开始刷题

1. 平均数为k的最长连续子数组

在这里插入图片描述

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int k = sc.nextInt();int ans = -1;long pre = 0, cur=0;Map<Long, Integer> map = new HashMap<>();map.put(0L, 0);for (int i = 1; i <= n; i++) {cur = pre + sc.nextInt() - k;if (map.containsKey(cur)) ans = Math.max(ans, i - map.get(cur));else map.put(cur, i);pre = cur;}System.out.println(ans);}
}

2. 小球投盒

在这里插入图片描述

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int a = in.nextInt();int b = in.nextInt();HashSet<Integer> hashset = new HashSet<>();for(int i = 1;i<=a;i++){hashset.add(i);}for(int i = 0;i < b;i++){int left = in.nextInt();int right = in.nextInt();if(left == 1){if(hashset.contains(right)){hashset.remove(right);}if(hashset.size()==0){System.out.print(i+1);return;}}else{if(!hashset.contains(right)){System.out.print(i+1);return;}hashset = new HashSet<>();hashset.add(right);}}System.out.print(-1);}
}

3. 小红结账

在这里插入图片描述

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别int n = in.nextInt();int m = in.nextInt();ArrayList<Long> arraylist = new ArrayList<>();for(int i = 0;i<m;i++){arraylist.add(0l);}for(int i  = 0;i<n;i++){//每张账单int people = in.nextInt();int money = in.nextInt();long fenmony = (long)Math.ceil(money*1.0/(people));for(int j = 0;j<people-1;j++){int who = in.nextInt();arraylist.set(who-1,fenmony+(long)arraylist.get(who-1));}}for(int i = 0;i<arraylist.size();i++){System.out.print(arraylist.get(i));if(i!=arraylist.size()-1) System.out.print(" ");}}
}

4. 小美的游戏

在这里插入图片描述

    import java.util.*;   // 注意类名必须为 Main, 不要有任何 package xxx 信息   public class Main {   public static void main(String[] args) {   long mod = 1000000007;   Scanner in = new Scanner(System.in);   int len = in.nextInt();   int max_op = in.nextInt();   long res = 0L;   long sum = 0L;   long[] a = new long[len];   for(int i=0;i<len;i++){   a[i] = in.nextInt();   }   Arrays.sort(a);   int idx = len-1;   for(int j=1;j<=max_op;j++){   if(a.length>=2){   long mul = (a[idx] * a[idx-1])%mod;   a[idx-1] = mul;   a[idx] = 1;   idx = idx - 1;   }else{   res = Math.max(res, a[0]);   break;   }   }   for(int j=0;j<len;j++){   sum = sum + a[j];   }   res = Math.max(res,sum%mod);   System.out.print(res);   }   }   

5. 小美种果树

在这里插入图片描述

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int x = in.nextInt();int y = in.nextInt();int z = in.nextInt();int index = 0;//模拟???while(true){index++;z -=x;z -=y; if(z<=0)break;index++;z -=x;if(z<=0)break;index++;z -=x;if(z<=0)break;}System.out.print(index);}
}

6. 小美的数组重排

在这里插入图片描述

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int q = in.nextInt();for (int i = 0; i < q; i++) {int n = in.nextInt();int m = in.nextInt();int [] a = new int[n];for (int j = 0; j < n; j++) {a[j] = in.nextInt();}int [] b = new int[n];for (int j = 0; j < n; j++) {b[j] = in.nextInt();}Arrays.sort(a);Arrays.sort(b);int[] reversedArray = new int[n];for (int j = 0; j < n; j++) {reversedArray[j] = b[n - 1 - j];}boolean flag = false;for(int j = 0;j<n;j++){if(a[j]+reversedArray[j]<1||a[j]+reversedArray[j]>m){System.out.println("No");//if(i!=n-1)System.out.println();flag = true;break;}}if(!flag){System.out.println("Yes");//if(i!=n-1)System.out.println();}}}
}

7. 判断ip地址是否合法

在这里插入图片描述

import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String addStr = scanner.nextLine();//非空if (addStr.equals("") || addStr == null) {System.out.println("invalid");return;}char c1 = addStr.charAt(0);char c2 = addStr.charAt(addStr.length() - 1);//4.IP地址不能以点号开始或结束,例如.192.168.0.1和192.168.0.1.是非法的。String s1 = Character.toString(c1);String s2 = Character.toString(c2);String[] strings = new String[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"  };int temp = 0;for (String string : strings) {if (string.equals(s1)) {temp++;}if (string.equals(s2)) {temp++;}}if (temp != 2) {System.out.println("invalid");return;}//1.IP地址由四个数字组成,用点号分隔。String[] split = addStr.split("\\.");if (split.length != 4) {System.out.println("invalid");return;}//3.数字之间没有多余的前导零,例如01是非法的。for (String s : split) {if (s.length() == 2 && Character.toString(s.charAt(0)).equals("0")) {System.out.println("invalid");return;}}for (int i = 0; i < split.length; i++) {//2.每个数字的取值范围是0到255。try {if (Integer.parseInt(split[i]) > 255) {System.out.println("invalid");return;}} catch (NumberFormatException e) {System.out.println("invalid");return;}}int address1 = Integer.parseInt(split[0]);int address2 = Integer.parseInt(split[1]);int address3 = Integer.parseInt(split[2]);int address4 = Integer.parseInt(split[3]);if (address1 < 126 && address1 > 0 || address1 == 126 && address2 == 0 &&address3 == 0 && address4 == 0) {System.out.println("A_address");} else if (address1 >= 128 && address1 <= 191) {System.out.println("B_address");} else if (address1 >= 192 && address1 <= 223) {System.out.println("C_address");} else {System.out.println("other");}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/730685.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python自学6

第一节第十章 开发图表 第一个可视化图表&#xff0c;折线图的开发 json数据格式 pyecharts模块 图标源码网站 Document gallery.pyecharts.org pyecharts模块的快速入门 pyecharts配置有两个选项 全局配置是对整个可视化界面进行配置&#xff0c;比如名字&#xff0c;工具…

代码复现错误

1. 问题&#xff1a; torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 64.00 MiB (GPU 0; 39.59 GiB total capacity; 37.72 GiB already allocated; 38.19 MiB free; 37.83 GiB reserved in total by PyTorch) If reserved memory is >> allocat…

防御保护 IPSEC VPPN实验

实验背景&#xff1a;FW1和FW2是双机热备 主备备份模式。 实验要求&#xff1a;在FW5和FW3之间建立一条IPSEC通道&#xff0c;保证10.0.2.0/24网段可以正常访问到192.168.1.0/24 IPSEC VPPN实验配置&#xff08;由于是双机热备状态&#xff0c;所以FW1和FW2只需要配置FW1主设…

用FPGA CORDIC IP核实现信号的相位检测,计算相位角

用FPGA CORDIC IP核实现信号的相位检测 1.matlab仿真 波形仿真代码&#xff1a; 代码功能&#xff1a;生成一个点频信号s&#xff0c;求出s的实部和虚部&#xff1b;并且结算相位角atan2。画出图形&#xff0c;并且将Q和I数据写入文件中。 %代码功能&#xff1a;生成一个点…

20.网络游戏逆向分析与漏洞攻防-网络通信数据包分析工具-数据分析工具数据类型编辑功能的实现

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易道云信息技术研究院VIP课 上一个内容&#xff1a;19.数据分析工具数据类型配置功能的实现 码云地址&#xff08;master 分支&#…

unity学习(49)——服务器三次注册限制以及数据库化角色信息4--角色信息数据库化

1.此处下断开始调试,list函数内就有问题&#xff1a; 2. 现在的问题是只读不写&#xff01;32行就是写入部分的代码&#xff1a; 3. 很奇怪&#xff0c;调试的时候确实是写进来了 程序正常执行后&#xff0c;文件中数据也没有消失 关闭服务器文件内容依旧正常。 players包含所…

MySQL篇—执行计划之覆盖索引Using index和条件过滤Using where介绍(第三篇,总共三篇)

☘️博主介绍☘️&#xff1a; ✨又是一天没白过&#xff0c;我是奈斯&#xff0c;DBA一名✨ ✌✌️擅长Oracle、MySQL、SQLserver、Linux&#xff0c;也在积极的扩展IT方向的其他知识面✌✌️ ❣️❣️❣️大佬们都喜欢静静的看文章&#xff0c;并且也会默默的点赞收藏加关注❣…

提醒一下!今年考研的人不要太老实了!!

今年准备计算机考研的同学&#xff0c;别太老实了&#xff01;别人说什么你就信什么 如果你的工作能力不足以支撑找到一个满意的工作&#xff0c;那我建议再沉淀两年&#xff01; 很多同学其实有点眼高手低&#xff0c;在计算机专业&#xff0c;低于1w的工作看不上&#xff0…

操作系统引导

目录 一. 什么是操作系统引导 \quad 一. 什么是操作系统引导 \quad 什么是操作系统引导: 就是在开机的时候, 怎么让操作系统运行起来 操作系统是安装在C盘的 分区表用来说明C,D,E,F盘的存储空间 RAM一关机, 里面的数据就会被清空, ROM则不会 MBR里面的程序被读到RAM里面, 那…

qt自定义时间选择控件窗口

效果如图&#xff1a; 布局如图&#xff1a; 参考代码&#xff1a; //DateTimeSelectWidget #ifndef DATETIMESELECTWIDGET_H #define DATETIMESELECTWIDGET_H#include <QWidget> #include <QDateTime>namespace Ui { class DateTimeSelectWidget; }class DateTim…

单链表OJ题:LeetCode--141.环形链表

朋友们、伙计们&#xff0c;我们又见面了&#xff0c;本期来给大家解读一下LeetCode中的第141道单链表OJ题&#xff0c;如果看完之后对你有一定的启发&#xff0c;那么请留下你的三连&#xff0c;祝大家心想事成&#xff01; 数据结构与算法专栏&#xff1a;数据结构与算法 个 …

O2O:Sample Efficient Offline-to-Online Reinforcement Learning

IEEE TKDE 2024 paper Introduction O2O存在策略探索受限以及分布偏移问题&#xff0c;进而导致在线微调阶段样本效率低。文章提出OEMA算法首先使用离线数据训练乐观的探索策略&#xff0c;然后提出基于元学习的优化方法&#xff0c;减少分布偏移并提高O2O的适应过程。 Meth…

OpenHarmony教程指南-自定义通知推送

介绍 本示例主要展示了通知过滤回调管理的功能&#xff0c;使用ohos.notificationManager 接口&#xff0c;进行通知监听回调&#xff0c;决定应用通知是否发送。 效果预览 使用说明 1.在使用本应用时&#xff0c;需安装自定义通知角标应用&#xff1b; 2.在主界面&#xff…

重学SpringBoot3-WebMvcAutoConfiguration类

重学SpringBoot3-WebMvcAutoConfiguration类 是什么什么用生效条件作用 自定义配置的三种方式自定义配置举例1. 自定义 DispatcherServlet 配置2. 静态资源配置3. 自定义MVC配置4. 消息转换器5. 异常处理 是什么 org.springframework.boot.autoconfigure.web.servlet.WebMvcAut…

FPGA IBUFG

IBUFG和IBUFGDS的输入端仅仅与芯片的专用全局时钟输入管脚有物理连接&#xff0c;与普通IO和其它内部CLB等没有物理连接。 所以&#xff0c;IBUFG输入的不能直接接另外信号。 GTH transceiver primitives are called GTHE3_COMMON and GTHE3_CHANNEL in UltraScale FPGAs, an…

@RequestMapping与@GetMapping和@PostMapping等注解的区别

目录 前置知识 大致区别 使用场景上的注意事项 如何工作 使用案例 写法对比 前置知识 HTTP请求方法一共有9种&#xff0c;为&#xff1a;GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECTGET(获取资源) 本质就是发送一个请求来取得服务器上的某一资源&…

【Java代码审计】JNDI+RMI绕过高版本JDK的限制

【Java代码审计】JNDIRMI绕过高版本JDK的限制 1.高版本JDK利用注入导致的问题2.绕过分析3.Tomcat8绕过4.工具绕过 1.高版本JDK利用注入导致的问题 JDK 6u132、7u122、8u113 开始 com.sun.jndi.rmi.object.trustURLCodebase 默认值为false&#xff0c;运行时需加入参数 -Dcom.s…

Go语言物联网开发安科瑞ADW300/4G电能表数据上传mqtt平台-电表接线到传输数据完整流程

电能表功能说明 ADW300是方便用户进行用电监测、集抄和管理&#xff0c;可灵活安装在配电箱中&#xff0c;可用于电力运维、环保监管等在线监测类平台中。我们本案例是用于工业售电公司对出售电的管理&#xff0c;设备可以监控用电情况、故障监控及警报&#xff0c;售电公司可…

(完美方案)解决mfc140u.dll文件丢失问题,快速且有效的修复

唉&#xff0c;又是丢失了mfc140u.dll&#xff0c;这该怎么办呢&#xff1f;如果你的电脑突然找不到或丢失mfc140u.dll文件&#xff0c;那就真是太糟糕了。别担心&#xff0c;我分享给你一些干货&#xff0c;告诉你如何快速解决mfc140u.dll丢失的问题。 一.mfc140u.dll属性功能…

百度地图城市点位数据下载并转换

概述 在浏览百度地图开放平台的时候&#xff0c;发现有个资源下载页面&#xff0c;里面有个城市中心点位和百度地图行政区划adcode映射表数据&#xff0c;这是一个经常使用到的数据&#xff0c;本文实现将这个数据转换为geojson&#xff0c;并借助QGIS转换为经纬度坐标或火星坐…