小团的蛋糕铺长期霸占着美团APP中“蛋糕奶茶”栏目的首位,因此总会吸引各路食客前来探店。 小团一天最多可以烤n个蛋糕,每个蛋糕有一个正整数的重量。 早上,糕点铺已经做好了m个蛋糕。 现在,有一个顾客要来买两个蛋糕,他希望买这一天糕点铺烤好的最重的和最轻的蛋糕,并且希望这两个蛋糕的重量恰好为a和b。剩余的n-m个蛋糕可以现烤,请问小团能否满足他的要求? 数据范围: 1 ≤ m ≤ n ≤ 1000 , 1≤ a,b ≤ 1000 进阶:时间复杂度 O(m) ,空间复杂度 O(m)
输入包含多组数据,每组数据两行。 每组数据的第一行包含4个整数,n,m,a,b,空格隔开。这里不保证a和b的大小关系。 接下来一行m个数,空格隔开,代表烤好的蛋糕重量
对于每一组数据,如果可以办到顾客的要求,输出YES,否则输出NO
4 2 2 4 3 3 4 2 2 4 1 1 4 2 2 4 5 5 4 2 4 2 2 4 2 2 2 4 3 3 3 2 2 4 3 3 3 2 2 4 3 3
YES NO NO YES NO NO NO
考点:模拟
数据规模 n ≤ 1e3 | 限制 1 秒 / 256MB | 标准输入输出
推荐方向:模拟
本题切入点
分类讨论:若最重最轻已恰好是 a、b 则可行;否则看现有蛋糕能否通过现烤补齐,注意 a、b 大小未知需先排序。
不涉及复杂算法,把题目描述的流程原样翻译成代码逐步执行即可。
思路框架(模拟 通法 · 非本题专属)
实现要点:结构上通常是一个外层循环包住若干 if/else 分支;只要状态定义清楚,正确率很高。
复杂度:时间 O(操作次数) | 空间 O(状态数)
该范式的通法易错点
对照本题
样例 1
4 2 2 4 / 3 3 / 4 2 2 4 / 1 1 / 4 2 2 4 / 5 5 / 4 2 4 2 / 2 4 / 2 2 2 4 / 3 3 / 3 2 2 4 / 3 3 / 3 2 2 4 / 3 3YES / NO / NO / YES / NO / NO / NO解析由校招宝本地引擎整理(依据源站考点标签 / 人工判题标注 / 题面规模信号),非官方题解,仅供思路参考。
本题来源:美团2023校招技术第9场编程题。