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

C++每日刷题day2025.7.13

思路:这个是迷宫的变种,我们判断条件是当往与当前方向不同的其他几个方向遍历的时候是需要将这个方向进行改变的,最主要的是先右再下再左再上这种。

class Solution {const int change[4][2] = {{0, 1}, {1, 0}, {0, -1}, {-1, 0}};
public:vector<int> spiralOrder(vector<vector<int>>& matrix) {if (matrix.size() == 0 || matrix[0].size() == 0) {return {};}int rows = matrix.size();int cols = matrix[0].size();int total = rows*cols;vector<vector<bool>> visited(rows, vector<bool>(cols));vector<int> ret(total);int row = 0;int col = 0;int directindex = 0;for (int i = 0; i < total; ++i){ret[i] = matrix[row][col];visited[row][col] = true;int nextrow = row + change[directindex][0];int nextcol = col + change[directindex][1];if (nextrow < 0 || nextrow >= rows || nextcol <0||nextcol>=cols || visited[nextrow][nextcol]){directindex = (directindex + 1) %4;}row += change[directindex][0];col += change[directindex][1];}return ret;}
};

滑动窗口+哈希表,右指针遍历碰到hash值大于1的时候就将左指针往右走。

class Solution {
public:int lengthOfLongestSubstring(string s) {int hash[128] = {0};int right = 0;int left = 0;int ret = 0;while (right < s.size()){hash[s[right]]++;while(hash[s[right]] > 1){hash[s[left++]]--;}ret = max(ret, right - left + 1);right ++;}return ret;}
};

斐波那契数列的判断,我们只需要利用abc这三个数滚动构造斐波那契数列,让当前输入的n这个数位于bc之间,到b或者到c的距离哪个小就返回哪个。

#include <iostream>
using namespace std;int main() {int a = 1;int b = 1;int c = 1;int ret = 0;int n;cin >> n;while (n > c){a = b;b = c;c = a + b;}ret = min(abs(c-n), abs(b-n));cout << ret;
}

http://www.dtcms.com/a/277323.html

相关文章:

  • 什么是RAG(Retrieval-Augmented Generation)?一文读懂检索增强生成
  • RabbitMQ面试精讲 Day 2:RabbitMQ工作模型与消息流转
  • 12.I/O复用
  • 前端性能与可靠性工程:资源优化 - 加载性能的“低垂果实”
  • 从零开始学习深度学习-水果分类之PyQt5App
  • SpringBoot集成Redis、SpringCache
  • C++ 强制类型转换
  • 【操作系统】strace 跟踪系统调用(一)
  • (LeetCode 每日一题) 2410. 运动员和训练师的最大匹配数(排序、双指针)
  • es里为什么node和shard不是一对一的关系
  • Augment AI 0.502.0版本深度解析:Task、Guidelines、Memory三大核心功能实战指南
  • 将 NumPy 数组展平并转换为 Python 列表
  • 1.1.5 模块与包——AI教你学Django
  • OpenLayers 入门指南【二】:坐标系与投影转换
  • 把 DNA 当 PCIe:一条 365 nt 链实现 64 Gbps 片上光互连——基于链式 Förster 共振的分子级波分复用链路
  • 理解 Robots 协议:爬虫该遵守的“游戏规则”
  • MySQL逻辑删除与唯一索引冲突解决
  • M00224-小范围疫情防控元胞自动机模拟matlab
  • 【unitrix】 5.1 第二套类型级二进制数基本结构体(types2.rs)
  • 深入解析Hadoop架构设计:原理、组件与应用
  • OpenLayers使用
  • (2)从零开发 Chrome 插件:实现 API 登录与本地存储功能
  • 音视频学习(三十八):像素与位深
  • 打破并发瓶颈:虚拟线程实现详解与传统线程模型的性能对比
  • QuickUnion优化及Huffman树
  • JS红宝书pdf完整版
  • JAVA生成PDF(itextpdf)
  • 为什么玩游戏用UDP,看网页用TCP?
  • [2025CVPR]GNN-ViTCap:用于病理图像分类与描述模型
  • MyBatis框架进阶指南:深入理解CRUD与参数映射