news 2026/4/18 10:21:16

笔试强训day7

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
笔试强训day7

字符串中找出连续最长的数字串

题目类型:字符串的处理

题目地址:字符串中找出连续最长的数字串

描述

读入一个字符串str,输出字符串str中的连续最长的数字串

输入描述

个测试输入包含1个测试用例,一个字符串str,长度不超过255。

输出描述

在一行内输出str中里连续最长的数字串。


示例

输入:abcd12345ed125ss123456789

输出:123456789

代码展示:

#include <iostream> using namespace std; int main() { string str; cin >> str; int n = str.size(); //用于记录 //begin用于记录头,end用于记录尾,count用于记录长度 int begin=0,end=0,count=0; for(int i=0;i<n;i++) { int j=i; if(str[i] <= '9' && str[i] >= '0') { //对下一个位置进行判断 while(j+1<n && str[j+1] <= '9' && str[j+1] >= '0') { j++; } } //对比长度 if(j-i>count) { begin = i; end = j; count = j-i; } //i跳到j,减少运算 i = j; } for(int i=begin;i<=end;i++) { cout << str[i]; } } // 64 位输出请用 printf("%lld")

岛屿数量

题目分类:搜索

题目地址:岛屿数量

描述

给一个01矩阵,1代表是陆地,0代表海洋, 如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。

岛屿:相邻陆地可以组成一个岛屿(相邻:上下左右) 判断岛屿个数。

例如:

输入

[

[1,1,0,0,0],

[0,1,0,1,1],

[0,0,0,1,1],

[0,0,0,0,0],

[0,0,1,1,1]

]

对应的输出为3

(注:存储的01数据其实是字符'0','1')


示例1

输入:[[1,1,0,0,0],[0,1,0,1,1],[0,0,0,1,1],[0,0,0,0,0],[0,0,1,1,1]]

返回值:3

示例2

输入:[[0]]

返回值:0

示例3

输入:[[1,1],[1,1]]

返回值:1

代码展示

class Solution { public: int n,m; int dx[4] = {0,0,1,-1}; int dy[4] = {1,-1,0,0}; bool vis[205][205]; void dfs(vector<vector<char> >& grid,int i,int j) { vis[i][j] = true; for(int t=0;t<4;t++) { int x = i + dx[t],y = j + dy[t]; if(x>=0&&x<n&&y>=0&&y<m&&grid[x][y] == '1' && !vis[x][y]) { dfs(grid,x,y); } } } int solve(vector<vector<char> >& grid) { n = grid.size(),m=grid[0].size(); int ans = 0; memset(vis, false, sizeof(vis)); for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(grid[i][j] == '1' && !vis[i][j]) { ans++; dfs(grid,i,j); } } } return ans; } };

拼三角

题目地址:拼三角

题目描述

给出6根棍子,能否在选出3根拼成一个三角形的同时剩下的3根也能组成一个三角形?

输入描述

首先在一行中给出一个 t,1≤t≤,代表测试数据的组数

接下来t行,每行给出6个数字代表棍子长度,棍子长度为正且小于

输出描述

在一行中输出 “Yes” or “No”


示例1

输入

2

1 1 1 1 1 1

1 2 3 4 5 6

输出

Yes

No

代码展示

#include<iostream> #include<algorithm> using namespace std; int t; int arr[6]; int main() { cin >> t; while(t--) { for(int i=0;i<6;i++)cin >> arr[i]; sort(arr,arr+6); if(arr[0]+arr[1]>arr[2] && arr[3]+arr[4]>arr[5]|| arr[0]+arr[2]>arr[3] && arr[1]+arr[4]>arr[5]|| arr[0]+arr[3]>arr[4] && arr[1]+arr[2]>arr[5]|| arr[0]+arr[4]>arr[5] && arr[1]+arr[2]>arr[3]) { cout << "Yes" << endl; } else cout << "No" << endl; } return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:04:32

​ [Windows] Glary Disk Cleaner - 智能深度硬盘清理工具

获取地址&#xff1a;Glary Disk Cleaner 专业的智能磁盘清理工具&#xff0c;采用深度扫描引擎&#xff0c;可精准识别并清除系统垃圾、浏览器缓存、无效注册表、软件残留、重复文件、大文件等数十种无用数据。提供安全建议&#xff0c;避免误删关键文件&#xff0c;一键释放…

作者头像 李华
网站建设 2026/4/18 8:08:04

Mac办公桌升级必备配件指南:提升工作效率的最佳选择

作为一名长期Mac用户&#xff0c;我在这里分享一些能够显著提升工作效率和办公体验的配件推荐。事实上&#xff0c;我写这篇文章时&#xff0c;几乎所有这些产品都在我的办公桌上。罗技MX Master 4鼠标我已经使用罗技MX Master系列鼠标很多年了。今年罗技发布新款MX Master 4时…

作者头像 李华
网站建设 2026/4/17 18:43:13

44、基于 Pthreads 的多线程编程基础

基于 Pthreads 的多线程编程基础 1. 多线程动态调整 在实际应用中,许多强大的服务器(如 Apache 和 NGINX)会根据具体情况、配置预设和当前工作负载,动态创建和调整所需的线程数量。这为多线程应用程序的设计提供了思路。 2. 线程属性 在创建线程时, pthread_create(3…

作者头像 李华
网站建设 2026/4/18 3:12:55

45、Pthreads 多线程编程基础

Pthreads 多线程编程基础 1. 限时等待线程结束 在多线程编程中,有时我们希望等待目标线程结束,但不想无限期地等待,即设置一个最大等待时间。这可以通过 pthread_timedjoin_np(3) 这个 API 来实现。 该 API 的前两个参数与 pthread_join 相同,第三个参数则以绝对时间…

作者头像 李华
网站建设 2026/4/18 5:34:53

英伟达推出开源权重模型填补美国AI市场空白

对于许多企业来说&#xff0c;AI技术的采用很大程度上依赖于高质量开源权重模型的可用性。将敏感的客户数据或来之不易的知识产权暴露给API以使用ChatGPT等封闭模型是不可接受的。除了中国AI实验室之外&#xff0c;目前可用的少数开源权重模型与OpenAI或Anthropic等公司的专有模…

作者头像 李华
网站建设 2026/4/18 5:37:30

50、多线程同步:锁与条件变量的深入解析

多线程同步:锁与条件变量的深入解析 1. 读写锁(Reader-Writer Locks) 读写锁提供了一种特殊的锁机制,适用于读操作频繁而写操作较少的场景。相关的 API 包括 pthread_rwlock_timedwrlock(3P) 、 pthread_rwlock_trywrlock(3P) 和 pthread_rwlock_wrlock(3P) 。 使…

作者头像 李华