这两天状态不是很好,美团笔试的题比较常规,五个编程,没有选择填空,做的一般,A了两道多,脑子感觉因为天天熬夜有点迟钝,最后几个题直接摆烂了。

第一题:送外卖

这道题当时思路出了点问题,这道题我思路是从0到n*T,分段讨论,比如现在是8个用户,他们的截至时间分别是6 10 4 5 40 42 11 15外卖员送餐时间是5
可以分成n段,在这是8段
0 5 10 15 20 25 30 35 40
应该是比如骑手送了第一次,那应该截止时间小于骑手的都要用魔法,当时想成了小于在这个区间里的骑手都能送到,只有冲突了才送不到,所以最后用例只过了20%。。。。
题目大意;有n个点餐用户,只有一个外卖员,每个点餐用户都有一个截至日期,必须在这个时间前送到,而外卖员送每一次的时间是固定的T,外卖员不能同时送两份外卖,如果出现冲突,外卖员可以使用魔法。问外卖员最少使用几次魔法。

这是外卖员不用魔法,在n*t的时间内送n次
我们要做的就是在每个区间寻找是否有冲突的用户

第一次:5,如果外卖员送了第一次,小于5的用户,那这个用户肯定是送不到了,得用魔法,外卖员送了第一次,去掉>=5 的截止时间最短的用户的需求,4要用魔法,5可以送到去掉,下次从6开始判断
第二次:10,6送不到用秘法,10可以送到,下次从11开始判断
第三次:15,11用魔法,15送到,下次从40开始判断
第四次:20,40可以送到
第五次:25,42可以送到

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
// 6 5 5 6 7 8 9 10
int main(){int n,t;cin >> n >> t;vector<int>vec;for(int i = 0; i < n; i++){int num;cin >> num;vec.push_back(num);}sort(vec.begin(),vec.end());int res = 0;int shortdex = 0;for(int curtime = t; curtime <= n * t; curtime += t){while(shortdex < n && vec[shortdex] < curtime){res++;shortdex++;}shortdex++;}cout << res;
}

第二题:打扫房间

这道题A出来了,本以为是广度优先搜索,后面发现好像不是
题目大意:一个房间,刚开始扫地机器人在0,0也就是左上角处,并且这个地是默认已经打扫的,接着给一串字符,WASD四种字符组成,分别代表上左下右四种操作,默认这个操作都是合法的,也就是不会有超出房间范围的操作,问:
字符串操作结束后,是否打扫干净/
1.打扫干净的话:问第几个指令的时候打扫干净的
2.如果么有打扫干净:问还有几个房间没有打扫干净

这个题比较简单,关键是做好记录,首先创建一个nm的二维数组,0,0已经打扫干净,我们需要打扫nm-1个格子,遍历字符串,对当前位置的X,Y坐标进行响应的加减变换,如果变换后的位置是0,就把它3变为1,且将未打扫格子数目减一,如果遍历过程中,未打扫格子数为0了,就退出并返回当前i值,如果遍历结束未打扫格子数仍然大于0,就返回剩余格子数。
注意输出格式,区分大小写和换行哦~~~~~~~~

#include <iostream>
#include <vector>
using namespace std;int main(){int n,m,k;cin >> n >> m >> k;string s;cin >> s;vector<vector<int>> visited(m,vector<int>(m,0));visited[0][0] = 1;int x = 0;int y = 0;int memory = n*m-1;for(int i = 0; i < k; i++){if(s[i] == 'W'){y--;}else if(s[i] == 'A'){x--;}else if(s[i] == 'S'){y++;}else if(s[i] == 'D'){x++;}if(visited[x][y] == 0){visited[x][y] = 1;memory--;}if(memory==0){cout << "Yes" << endl << i;return 0;}}cout << "No" << endl << memory;
}

第三题:翻扑克

正向翻有点像约瑟夫环,逆向有点想不明白
题目大意,有一副点数从1到n的牌,对这副牌先取牌堆顶一张放到牌堆底,再取牌堆顶一张放到牌堆底,然后翻开牌堆顶的那张,重复下去直到最后一张被翻开。

约瑟夫环问题
https://leetcode.cn/problems/yuan-quan-zhong-zui-hou-sheng-xia-de-shu-zi-lcof/
这个题就是一个逆向的约瑟夫环问题,其中m等于2

这里注意下标和求的值不一样,差一位,所以求下标应该对当前最大坐标取余。

int cir(int dex)
{return nums[i]+2)%i+1;
}

第四题:三元组的问题

这个三个for循环暴力做的过了80%好像
题目是:一个数组下标 i < j < k的三个数,现在有个关系式,a[i] - a[j] = 2a[j] + a[k];
求出所有满足的三元组

这个应该像百钱百鸡问题要先变换式子,不能无脑暴力

第五题:求到叶子节点最大路径和

题目输入是一个数组形式,应该是二叉完全树,所以直接广搜求出所有结果取最大即可
https://leetcode.cn/problems/path-sum/solution/lu-jing-zong-he-by-leetcode-solution/

2023校招美团笔试相关推荐

  1. 2023校招美团第二次笔试

    烤串 这个简单直接做 定位 先遍历找出所有信标,再筛选最小字典序坐标 复习 这个也是直接做,还有提示... 注意刚开始不要除以100做,防止出现多次运算丢失精度 拟合 这个动态规划没做出来,估计是推导 ...

  2. 2023校招美团第三次笔试

    最后一次机会,前两道题简单很快做出来,后面三道折腾半天基本上全军覆没. 字符串匹配 直接遍历S,对于S中每一个长度为m的字符串都与s比较 挑剔 用vector容器进行模拟,先按顺序存放所有宝石,然后先 ...

  3. 2023校招4399笔试

    之前暑期实习投过一次,做的比较拉跨,这次感觉还可以,思路基本上差不多,就是具体的实现,二三题都是只写了一个最后的函数,不知道对不对. TCP服务端调用API顺序 应该是先绑定端口,再开始监听,接收到客 ...

  4. 2023校招荣耀笔试

    大端小端字符串转换 主要是卡9的倍数这进行判断 这个很简单,直接做 会议室最长使用时间 这个和之前的遇到i的会议室的题目看似相同,又不一样,之前那种可以转换成公交车上下车问题,这个我尝试相同思路去做感 ...

  5. 小米集团2023校招芯片设计笔试

    18道单选:主要考面积优化.verilog语言基本语法.串行总线.sdc约束.冯洛伊曼结构和哈佛结构的区别.饱和截位等 .8道多选:主要考循环语句综合.等价性验证.亚稳态.DFT设计.功耗设计.PVT ...

  6. 微软2023校招8月26日即将截止!没有完成投递的小伙伴抓紧啦!

    微软2023校招8月26日截止,还没找到内推的23届同学可以发邮件到592786579@qq.com 网申时间:2022 / 8 / 1 - 2022 / 8 / 26 官网投递链接: https:/ ...

  7. 2023校招总结--软件测试岗位

    添加微信  neituijunsir  加入 ➜ 2023校招群/2024实习群 1. 基本情况 我的学历是湖北非省会的四非机械研究生,本硕都是这个学校的机械专业.四非:非985.非211.非双一流. ...

  8. 360 c语言 笔试,奇虎360校招的笔试真题

    选择题有45个? 好像是,三道简答题, 简答题: 1.设计一个课程表(包括目标人群.核心功能.特色设计); 2.说ATM的缺点,改进方法; 3.如何让李开复等互联网大牌关注你的微薄? 选择题记得不是很 ...

  9. 2020-09-13 滴滴-2021校招在线笔试-DE数据开发试卷

    2020-09-13 滴滴-2021校招在线笔试-DE数据开发试卷 1. D星群岛 题目: D星群岛由n个小岛组成.为了加强小岛居民之间的交流,头目决定启动一个造桥工程,将全部n个岛连接到一起.由于受 ...

  10. 哔哩哔哩2018校招前端笔试

    前言 前几日,哔哩哔哩在电子科大清水河校区举行了校招宣讲会.B站不用多说,中国最大的同性交友网站,不去工作也能去看看. 当晚便进行了部分笔试,下面是我参加的前端笔试试题和我自己的解答,分享给大家. 博 ...

最新文章

  1. python单词词频字典_python利用多种方式来统计词频(单词个数)
  2. 【动态规划专题】数字三角形模型
  3. android setting模块,android O版本 设置(Settings)模块总结--设置的一级界面的加载
  4. eclipse奇淫技巧 (转)
  5. Java集合unmodifiableSortedSet()方法(带示例)
  6. java 停止kettle转换_通过java运行Kettle转换
  7. python闭包与装饰器的代码解释
  8. ORA-29807: specified operator does not exist
  9. 用python画玫瑰花-python绘制玫瑰的实现代码
  10. leetCode 203. Remove Linked List Elements 链表
  11. stl中auto_ptr,unique_ptr,shared_ptr,weak_ptr四种智能指针使用
  12. Typora突然开始收费?开源免费的MarkText了解一下
  13. GitHub 加速神器, 来了!
  14. 助推“内循环”,华侨城激活国内旅游市场
  15. 企业微信加好友太频繁怎么办?
  16. 【摄影笔记三】光圈和快门
  17. 【day13】【洛谷算法题】-P5713洛谷团队系统-刷题反思集[入门2分支结构]
  18. 经典电影list(辛辛苦苦整理的)
  19. Mac Apache php 配置域名
  20. 2016MDCC移动开发者大会总结

热门文章

  1. 服务器能不能清理系统垃圾,在服务器上如何清理垃圾
  2. wps office 2013 利用wps文字制作一张漂亮的座位表
  3. BigDecimal类型加减乘除运算(Java必备知识)
  4. 华为ensp cloud(云)中没有网卡,缺失网卡,网卡地址错误解决方法
  5. 网络媒体教程:人物素描
  6. qq邮箱 服务器认证失败怎么回事,为什么我的QQ邮箱登录不了 QQ邮箱无法登陆怎么解决...
  7. Overloaded operators
  8. RxJS 6 —— operators
  9. Java Mail 发送邮件126、163 、QQ
  10. windows能装linux系统盘,用U盘安装linux系统(Windows环境下制作启动盘)