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

笔试——Day33

文章目录

  • 第一题
    • 题目
    • 思路
    • 代码
  • 第二题
    • 题目:
    • 思路
    • 代码
  • 第三题
    • 题目:
    • 思路
    • 代码

第一题

题目

跳台阶扩展问题
在这里插入图片描述

思路

考虑青蛙跳到第n级台阶的跳法。青蛙在最后一步可以
跳1级:那么在此之前,它需要跳到第n-1级,有f(n-1)种方法
跳2级:在此之前,它需要跳到第n-2级,有f(n-2)种方法
跳n-1级:在此之前,它需要跳到第1级,有f(1)种方法
直接跳n级:这是一种新的方法,即直接从地面跳到第n级

因为:
f(n) = f(n-1) + f(n-2) + ... + f(1) + 1
f(n-1) = f(n-2) + f(n-3) + ... + f(1) + 1
所以:
f(n) - f(n-1) = f(n-1)
f(n) = 2 * f(n-1)
即:
f(n) = 2^(n-1)

代码

#include <iostream>
#include <cmath>
using namespace std;int main()
{int n = 0; cin >> n;cout << pow(2, n - 1) << endl;return 0;
}

第二题

题目:

包含不超过两种字符的最长子串

在这里插入图片描述

思路

滑动窗口: 使用一个kind来标记窗口中字符的种类数量,
<2时,进窗口;
>2时,出窗口;
出完后,更新当前结果

代码

#include <iostream>
#include <string>
using namespace std;int main() 
{int hash[26] = {0};string s; cin >> s;int left = 0, right = 0;int res = 0;int kind = 0;while(right < s.size()){if(hash[s[right] - 'a']++ == 0) kind++;while (kind > 2) {if(hash[s[left++] - 'a']-- == 1) kind--;}res = max(res, right - left + 1);right++;}cout << res << endl;return 0;
}
// 64 位输出请用 printf("%lld")

第三题

题目:

字符串的排列
在这里插入图片描述

思路

递归DFS

代码

class Solution {
public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param str string字符串 * @return string字符串vector*/bool visited[20] = {0};vector<string> res;string path;string s;int n;vector<string> Permutation(string str) {// write code heren = str.size();sort(str.begin(), str.end());s = str;dfs(0);return res;}void dfs(int pos){if(pos == n){res.push_back(path);return ;}for(int i = 0; i < n; i++){if(!visited[i]){if(s[i] == s[i - 1] && !visited[i - 1]) continue;path.push_back(s[i]);visited[i] = true;dfs(pos + 1);visited[i] = false;path.pop_back();}}}
};
http://www.dtcms.com/a/322988.html

相关文章:

  • 基于遗传优化的稀疏线阵最优排布算法matlab仿真
  • Java面向对象编程(OOP)全面解析:从基础到实践
  • 关于城市农村创业的一点构想
  • 自动生成视频的AI大模型高效创作指南
  • mac安装node.js
  • 【GPT入门】第41课 Model Scope在线平台部署Llama3
  • Serper注册无反应
  • Numpy基础(通用函数)
  • 游游的数组染色
  • 洛谷 滑动窗口 /【模板】单调队列
  • 揭秘MyBatis核心类MappedStatement
  • Java异常:认识异常、异常的作用、自定义异常
  • ChatGPT 5的编程能力宣传言过其实
  • 97-基于Python的大众点评数据分析预测系统
  • 七、《Serverless架构:按毫秒计费的成本革命》--从新浪AI推理平台50%效能提升看无服务器本质
  • 数据结构——优先级队列(PriorityQueue):一文解决 Top K 问题!
  • 可视化大屏 SDK 数据结构设计:从拖拽组件到最终渲染的全链路
  • 2025-08-09 李沐深度学习13——经典卷积神经网络 (1)
  • 嵌入式知识日常问题记录及用法总结(一)
  • C++2024 年一级
  • Vue3 学习教程,从入门到精通,Vue 3 + Tailwind CSS 全面知识点与案例详解(31)
  • buuctf:inndy_echo、actf_2019_babystack
  • 花生4CL基因家族鉴定及对干旱与盐胁迫响应分析--文献精读157
  • 【AI论文】种子扩散模型:一种具备高速推理能力的大规模扩散语言模型
  • 智慧农业-无人机视角庄稼倒伏农作物倒伏识别分割数据集labelme格式541张1类别
  • C语言指针完全指南:从入门到精通
  • Selenium使用超全指南
  • OpenCV图像裁剪与 ROI 操作
  • 全志刷机工具:PhoenixSuit-全志芯片处理器-刷机工具安装包及最详细使用教程指南
  • Python day39