做园区门户网站的需求分析,常州网站推广,商标买卖,网站开发计什么科目目录
题目#xff1a;
示例#xff1a;
分析#xff1a;
代码#xff1a; 题目#xff1a; 示例#xff1a; 分析#xff1a;
题目挺长#xff0c;估计中等难度是给在了阅读理解上。
简单来说就是给我们一堆餐厅的信息#xff0c;每个餐厅拥有五个属性#xff…目录
题目
示例
分析
代码 题目 示例 分析
题目挺长估计中等难度是给在了阅读理解上。
简单来说就是给我们一堆餐厅的信息每个餐厅拥有五个属性分别是id评分是否是素食餐厅价格和距离。
另外给我们三个过滤条件分别是是否素食主义最大价格和最远距离。
如果是素食主义那么就只能进素食餐厅反之可以进所有餐厅。
另外只要价格和距离都没有超过最大的限制那么也是可以的。
因此前面要做的只是按照题目的要求把符合条件的餐厅过滤出来。
最后要我们返回符合条件的餐厅id按照评分的降序排序评分一致时按照id的降序排序。
所以我们最后对过滤后的餐厅做个排序之后再把id提取出来就可以了。
代码
class Solution {
public:vectorint filterRestaurants(vectorvectorint restaurants, int veganFriendly, int maxPrice, int maxDistance) {vectorvectorintcache;for(const autor:restaurants){//筛选出合格的餐厅if((veganFriendly0||r[2]1) r[4]maxDistance r[3]maxPrice)cache.push_back(r);}//按照要求排序sort(cache.begin(),cache.end(),[](auto a,auto b){if(a[1]b[1]) return a[0]b[0];return a[1]b[1];});vectorintres(cache.size());//按顺序取出餐厅idfor(int i0;icache.size();i) res[i]cache[i][0];return res;}
};