当前位置: 首页 > news >正文

力扣每日一题(+日常水几道题)

每日一题1333. 餐厅过滤器 - 力扣(LeetCode)

简单的按规则排序,去除几个不满足的条件然后排序返回即可

#include<algorithm>
class Solution {
public:vector<int> filterRestaurants(vector<vector<int>>& restaurants, int veganFriendly, int maxPrice, int maxDistance) {vector<int>ans;std::sort(restaurants.begin(),restaurants.end(),[](vector<int>& a,vector<int>& b){return a[1] == b[1] ? a[0] > b[0] : a[1] > b[1]; return true;});if(veganFriendly)for(auto x : restaurants){if(!x[2] || x[3] > maxPrice || x[4] > maxDistance)continue;ans.emplace_back(x[0]);}elsefor(auto x : restaurants){if( x[3] > maxPrice || x[4] > maxDistance)continue;ans.emplace_back(x[0]);}return ans;}
};

1137. 第 N 个泰波那契数 - 力扣(LeetCode)

一题简单的递推,也是没什么好说的

class Solution {
public:int tribonacci(int n) {std::array<int,3> ans = {0, 1, 1};if(n <= 2)return ans[n];// 0 1 1 2 4 7for(int i = 0; i <= n - 3; i++){int d = 0;for(int j = 0; j < 3; j++){// std::cout << ans[j] << " ";d += ans[j];if(2 - j)ans[j] = ans[j + 1];}//  std::cout << "\n" << d << " " << "\n";ans[2] = d;}return ans[2];}
};

790. 多米诺和托米诺平铺 - 力扣(LeetCode)

方法一:状态压缩dp

class Solution {
public:int mod = 1e9 + 7;int numTilings(int n) {using i64 = int64_t;//按列表达状态 00 10 01 11i64 dp[n + 1][12];//平铺到第i 列时状态为 …… 的方案数memset(dp, 0, sizeof dp);dp[0][1 << 1 | 1] = 1;for(int i = 1; i <= n;i++){dp[i][0] = dp[i - 1][1 << 1 | 1];dp[i][1 << 1] = (dp[i - 1][0] + dp[i - 1][1]) % mod;dp[i][1] = (dp[i - 1][0] + dp[i - 1][1 << 1]) % mod;dp[i][1 << 1 | 1] = (dp[i - 1][0] + dp[i - 1][1] + dp[i - 1][1 << 1 | 1] + dp[i - 1][1 << 1]) % mod;}return dp[n][1 << 1 | 1] % mod;}
};

主要是方法二:学习别人的想法和写法


作者:灵茶山艾府
链接:https://leetcode.cn/problems/domino-and-tromino-tiling/submissions/
来源:力扣(LeetCode)

class Solution {const int MOD = 1e9 + 7;
public:int numTilings(int n) {if (n == 1) return 1;long f[n + 1];f[0] = f[1] = 1;f[2] = 2;for (int i = 3; i <= n; ++i)f[i] = (f[i - 1] * 2 + f[i - 3]) % MOD;return f[n];}
};

http://www.lryc.cn/news/178462.html

相关文章:

  • 百度SEO不稳定的原因及解决方法(百度SEO不稳定因素的5大包括)
  • 深度学习(1)---卷积神经网络
  • 探索社会工程的深度:从定义到高级攻击策略
  • CTF 入门指南:从零开始学习网络安全竞赛
  • Spring整合第三方框架
  • Linux Shell 无vi获取文件某行指定内容和修改某行指定内容
  • 在EXCEL中构建加载项之创建加载项的目的及规范要求
  • Hive【Hive(三)查询语句】
  • 商场做小程序商城的作用是什么?
  • XPD738协议系列-USB Type-C PD 和 Type-A 双口控制器
  • 【面试八股】IP协议八股
  • 【冰糖R语言】创建R包(打包R程序)
  • 照片后期处理软件DxO FilmPack 6 mac中文说明
  • 51单片机音乐闹钟秒表倒计时整点报时多功能电子钟万年历数码管显示( proteus仿真+程序+原理图+报告+讲解视频)
  • Scala第九章节
  • arduino - UNO-R3,mega2560-R3,NUCLEO-H723ZG的arduino引脚定义区别
  • 提取多个txt数据并合成excel——例子:与中国建交的国家
  • uni-app:js修改元素样式(宽度、外边距)
  • day36-单元测试
  • 7、脏话检测
  • Godot信号教程(使用C#语言)| 创建自定义信号 | 发出自定义信号 | 使用代码监听信号
  • 分布式文件存储系统minio、大文件分片传输
  • 在 msys2/mingw 下安装及编译 opencv
  • java 根据身份证号码判断性别
  • 信息服务上线渗透检测网络安全检查报告和解决方案4(XSS漏洞修复)
  • 【SQL】mysql创建定时任务执行存储过程--20230928
  • 安全基础 --- MySQL数据库解析
  • 软件设计师考试学习3
  • 使用LDA(线性判别公式)进行iris鸢尾花的分类
  • 王学岗生成泛型的简易Builder