每日一练(编程题-C/C++)
目录
- CSDN每日一练
- 1. 2023/2/27- 一维数组的最大子数组和(类型:数组 难度:中等)
- 2. 2023/4/7 - 小艺照镜子(类型:字符串 难度:困难)
- 3. 2023/4/14 - 最近的回文数(难度:中等)
- 4. 2023/2/1-蛇形矩阵(难度:困难)
- 6. 2023/5/26 - 单词逆序(类型:字符串、逆序 难度:中等)
- LeetCode题库-C语言
- 674. 最长连续递增序列(难度:简单)
- 1309. 解码字母到整数映射(难度:简单)
CSDN每日一练
1. 2023/2/27- 一维数组的最大子数组和(类型:数组 难度:中等)
通过率80%
// 请关闭中文输入法,用英文的字母和标点符号。
// 如果你想运行系统测试用例,请点击【执行代码】按钮,如果你想提交作答结果,请点击【提交】按钮,
// 注意:除答案外,请不要打印其他任何多余的字符,以免影响结果验证
// 本OJ系统是基于 OxCoder 技术开发,网址:www.oxcoder.com
// 模版代码提供基本的输入输出框架,可按个人代码习惯修改#include <stdio.h>
#include <stdlib.h>void solution(int n, int arr[]) {// TODO: 请在此编写代码int max = arr[0], start = 0, end = 0;for (int i = 0; i < n; i++){int current = 0;for (int j = i; j < n; j++){ current = current + arr[j];if (current >= max){max = current;start = i;end = j;}}}printf("%d %d", start, end);
}int main() {int n;scanf("%d", &n);int* arr;arr = (int*)malloc(n * sizeof(int));for (int i = 0; i < n; i++) scanf("%d", &arr[i]);solution(n, arr);return 0;
}
示例1:
9 【-2 1 -3 4 -1 2 -5 4】起始:3 终止:6
示例2:
5 【1 -2 3 5 -1 2】 起始:2 终止:5
2. 2023/4/7 - 小艺照镜子(类型:字符串 难度:困难)
最长回文子串问题(四种方法)
// 请关闭中文输入法,用英文的字母和标点符号。
// 如果你想运行系统测试用例,请点击【执行代码】按钮,如果你想提交作答结果,请点击【提交】按钮,
// 注意:除答案外,请不要打印其他任何多余的字符,以免影响结果验证
// 本OJ系统是基于 OxCoder 技术开发,网址:www.oxcoder.com
// 模版代码提供基本的输入输出框架,可按个人代码习惯修改#include <stdio.h>
#include <stdlib.h>
#include<string.h>int ExpandPalindrome(char s[], int n, int left, int right)
{int count = 1;while (left >= 0 && right < n && s[left] == s[right]){left--;right++;count++;}return count;
}void solution(char s[]) {// TODO: 请在此编写代码int i, n, length1, length2, maxlen = 1, count1, count2;n = strlen(s); //计算字符串的长度if (n == 2 && s[0] == s[1]) maxlen = 2;for (i = 1; i < n - 1; i++) //循环不包括开头和结尾{count1 = ExpandPalindrome(s, n, i - 1, i + 1); //回文串长度是奇数的情况length1 = 2 * count1 - 1; if (length1 >= maxlen) maxlen = length1;if (s[i + 1] == s[i]) //回文串长度是偶数的情况{count2 = ExpandPalindrome(s, n, i, i + 1); length2 = 2 * (count2 - 1);if (length2 >= maxlen) maxlen = length2;} }printf("%d", maxlen);
}int main() {char* s = (char*)malloc(sizeof(char) * 1000); //动态开辟内存空间scanf_s("%s", s);solution(s);free(s);return 0;
}
3. 2023/4/14 - 最近的回文数(难度:中等)
#include <iostream>
#include<string>
using namespace std;int main()
{int n;cin >> n;int flag = 0, length, count;int i, j, k;for (i = n; !flag; i++) //从当前数开始,逐个判断{length = 0, count = 0; k = 0;string str = to_string(i); //函数to_string用于把数字类型转换为string类型length = str.length(); //获取字符串的长度int times = length / 2; //比较次数while (times--){if (str[k] == str[length - 1 - k]) //头尾对比{count++; //计数比较次数k++;}else break; //一旦不相等就开始下一个数的判断}if (count == length / 2) {flag = 1; //找到最近的回文数cout << i; //输出}}return 0;
}
运行超时,您的程序未能在规定的时间内运行结束,请检查是否循环有错或算法复杂度过大。
4. 2023/2/1-蛇形矩阵(难度:困难)
#include<stdio.h>
#include<stdlib.h>void Print(int num, int **arr) //打印蛇形矩阵
{if (num == 0) printf("%d", arr[0][0]);else{for (int i = 0; i < num; i++){for (int j = 0; j < num; j++)printf("%d ", arr[i][j]);printf("\n");}}
}int main()
{int i, j, m, n, num;scanf_s("%d", &num);int** arr = (int**)malloc(num * sizeof(int*)); //动态开辟存储单元for (int i = 0; i < num; i++) {arr[i] = (int*)malloc(num * sizeof(int));}arr[0][0] = 1;for (i = 1; i < num; i++) //上三角{if (i % 2 == 1) //奇数次循环的话,斜向下累加{m = 0; n = i;arr[0][i] = arr[0][i - 1] + 1; //偶数次循环,第一行的数为左边一个数加1for (j = 0; j < i; j++) arr[++m][--n] = arr[m - 1][n + 1] + 1; //从第二行开始斜向下累加}else //偶数次循环的话,斜向上累加{m = i; n = 0;arr[i][0] = arr[i - 1][0] + 1; //奇数次循环,第一列的数为上边一个数加1for (j = 0; j < i; j++) arr[--m][++n] = arr[m + 1][n - 1] + 1; //从第二列开始斜向上累加}}for (i = 0; i < (num - 1); i++) //下三角{if ((num + i) % 2 == 0) //num为偶数时,先斜向上累加{m = num-1, n = i + 1;arr[num-1][i + 1] = arr[num-1][i] + 1;for (j = num-1; j > (i+1); j--) arr[--m][++n] = arr[m + 1][n - 1] + 1;}else //num为奇数时,先斜向下累加{m = i + 1; n = num-1;arr[i + 1][num-1] = arr[i][num-1] + 1;for (j = num-1; j > (i+1); j--) arr[++m][--n] = arr[m - 1][n + 1] + 1;}}Print(num, arr);free(arr); //释放存储单元return 0;
}
运行结果:
6. 2023/5/26 - 单词逆序(类型:字符串、逆序 难度:中等)
// 请关闭中文输入法,用英文的字母和标点符号。
// 如果你想运行系统测试用例,请点击【执行代码】按钮,如果你想提交作答结果,请点击【提交】按钮,
// 注意:除答案外,请不要打印其他任何多余的字符,以免影响结果验证
// 本OJ系统是基于 OxCoder 技术开发,网址:www.oxcoder.com
// 模版代码提供基本的输入输出框架,可按个人代码习惯修改#include <stdio.h>
#include <stdlib.h>
#include<string.h>void solution(char str[1000]) {// TODO: 请在此编写代码int i, j = 0, length, count = 0, array[100];length = strlen(str); //字符串的长度for (i = 0; i < length; i++){if (str[i] == ' '){array[j++] = i + 1;count++; //统计空格的数量}}//for (i = 0; i < count; i++) printf("%d ", array[i]);//printf("\n");int location = count - 1;for (i = count; i > 0; i--) //输出除第一段外其他的部分{for (j = array[location]; j < length && str[j] != ' '; j++) printf("%c", str[j]);location = location - 1;printf(" "); //输出后带上空格}for (i = 0; i < length && str[i] != ' '; i++) printf("%c", str[i]); //第一段单独输出}int main() {char str[1000];gets_s(str); //可以读取空格, 回车才会结束输入solution(str);return 0;
}
整数类型 | 数值范围 | 转换函数 |
---|---|---|
有符号8位整数 | − 2 7 -2^7 −27 ~ 2 7 − 1 2^7-1 27−1 | int8 |
无符号8位整数 | 0 0 0 ~ 2 8 − 1 2^8-1 28−1 | unit8 |
有符号16位整数 | − 2 15 -2^{15} −215 ~ 2 15 − 1 2^{15}-1 215−1 | int16 |
无符号16位整数 | 0 0 0 ~ 2 16 − 1 2^{16}-1 216−1 | unit16 |
有符号32位整数 | − 2 31 -2^{31} −231 ~ 2 31 − 1 2^{31}-1 231−1 | int32 |
无符号32位整数 | 0 0 0 ~ 2 32 − 1 2^{32}-1 232−1 | unit32 |
有符号64位整数 | − 2 63 -2^{63} −263 ~ 2 63 − 1 2^{63}-1 263−1 | int64 |
无符号64位整数 | 0 0 0 ~ 2 64 − 1 2^{64}-1 264−1 | unit64 |
LeetCode题库-C语言
674. 最长连续递增序列(难度:简单)
int findLengthOfLCIS(int* nums, int numsSize){int result = 0, count;// TODO: 请在此编写代码for (int i = 0; i < numsSize; i++){count = 0;for (int j = i + 1; j < numsSize; j++){if (nums[j] > nums[j - 1]) count++;else break;}if (count > result) result = count;}return result + 1;
}
1309. 解码字母到整数映射(难度:简单)
char * freqAlphabets(char * s){char *arr=malloc(sizeof(char)*strlen(s));int i = 0, count = 0;while (i < strlen(s)){if (i < strlen(s) - 2 && s[i + 2] == '#'){arr[count++] = 'j' + (s[i] - '0') * 10 + (s[i + 1] - '0') -10; //'j' - 'z'i = i + 3; //跳到#号后一位数字开始判断}else{arr[count++] = 'a' + (s[i] - '0') - 1; //'a' - 'i'i = i + 1; //接着下一位数字开始判断}}arr[count] = '\0'; //字符串结束符return arr;
}
相关文章:
每日一练(编程题-C/C++)
目录 CSDN每日一练1. 2023/2/27- 一维数组的最大子数组和(类型:数组 难度:中等)2. 2023/4/7 - 小艺照镜子(类型:字符串 难度:困难)3. 2023/4/14 - 最近的回文数(难度:中等)4. 2023/2/1-蛇形矩阵(难度:困难)…...
Unity UnityWebRequest 在Mac上使用报CommectionError
今天是想把前两天写的Demo拿到Mac上打个IPA的完事我发现 在运行时释放游戏资源的时候UnityWebRequest返回的结果不是Success 查看Log发现是 req.result 是CommectionError error是 Cannot connect to destination host 代码如下: UnityWebRequest req UnityWebRequ…...
WorkPlus为企业打造私有化部署IM解决方案
在移动数字化时代,企业面临着如何全面掌控业务和生态的挑战。企业微信、钉钉、飞书、Teams等应用虽然提供了部分解决方案,但无法满足企业的私有化部署需求。此时,WorkPlus作为安全专属的移动数字化平台,被誉为移动应用的“航空母舰…...
QT上位机开发(抽奖软件)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 用抽奖软件抽奖,是一种很常见的抽奖方式。特别是写这篇文章的时候,正好处于2023年12月31日,也是一年中最后一天…...
雨课堂作业整理
第一次作业 1.下列序列是图序列的是( ) A.1,2,2,3,4,4,5 B.1,1,2,2,4,6,6 C.0,0,2&am…...
C#/WPF 只允许一个实例程序运行并将已运行程序置顶
使用用互斥量(System.Threading.Mutex): 同步基元,它只向一个线程授予对共享资源的独占访问权。在程序启动时候,请求一个互斥体,如果能获取对指定互斥的访问权,就职运行一个实例。 实例代码: /// <…...
【基础】【Python网络爬虫】【1.认识爬虫】什么是爬虫,爬虫分类,爬虫可以做什么
Python网络爬虫基础 认识爬虫1.什么是爬虫2.爬虫可以做什么3.为什么用 Ptyhon 爬虫4.爬虫的分类通用爬虫聚焦爬虫功能爬虫增量式爬虫分布式爬虫 5.爬虫的矛与盾(重点)6.盗亦有道的君子协议robots7.爬虫合法性探究 认识爬虫 1.什么是爬虫 网络爬虫&…...
【算法与数据结构】860、LeetCode柠檬水找零
文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:本题的思路比较简单,首先要保存收到的零钱,其次计算找零,最后分解找…...
「Verilog学习笔记」乘法与位运算
专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网 观察乘数的特点: 1111_1011 1_0000_0000 - 1 - 100 timescale 1ns/1nsmodule dajiang13(input [7:0] A,output [15:0] B);//*************code*********…...
CSS与JavaScript的简单认识
CSS:是一门语言,用于控制网页表现,让页面更好看的。 CSS(Cascading Style Sheet):层叠样式表 CSS与html结合的三种方式: 1、内部样式:用style标签,在标签内部定义CSS样式…...
MAC 中多显示器的设置(Parallels Desktop)
目录 一、硬件列表: 二、线路连接: 三、软件设置: 1. 设置显示器排列位置及显示参数 2. 分别设置外接显示器为:扩展显示器,内建显示器为主显示器 3. 设置Parallels Desktop屏幕参数 四、结果 一、硬件列表&a…...
迁移到云原生:如何使用微服务迁移应用程序
企业遇到大规模部署和监督生产中的应用程序的任务。幸运的是,我们可以使用大量技术和工具。然而,从传统的,整体的结构转变为云态一个人提出了自己的障碍。在这里,您会发现将应用程序从整体设置转移到基于微服务的体系结构时要进行…...
kafka 的零拷贝原理
文章目录 kafka 的零拷贝原理 今天来跟大家聊聊kafka的零拷贝原理是什么? kafka 的零拷贝原理 零拷贝是一种减少数据拷贝的机制,能够有效提升数据的效率; 在实际应用中,如果我们需要把磁盘中的某个文件内容发送到远程服务器上…...
华为云Stack 8.X流量模型分析(五)
六、EIP流量模型分析 弹性公网IP(Elastic IP,简称EIP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务。如果资源只配置了私网IP,则无法直接访问Internet,为资源配置弹性公网IP后,可…...
学习动态规划解决不同路径、最小路径和、打家劫舍、打家劫舍iii
学习动态规划|不同路径、最小路径和、打家劫舍、打家劫舍iii 62 不同路径 动态规划,dp[i][j]表示从左上角到(i,j)的路径数量dp[i][j] dp[i-1][j] dp[i][j-1] import java.util.Arrays;/*** 路径数量* 动态规划,dp[i][j]表示从左上角到(i,j)的路径数量…...
nodejs微信小程序+python+PHP特困救助供养信息管理系统-计算机毕业设计推荐
目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…...
Vue(二):计算属性与 watch 监听器
03. Vue 指令拓展 3.1 指令修饰符 可以通过 . 来指明一些指令的后缀,不同的后缀中封装了不同的操作,可以帮助我们简化代码,比如之前使用过的监听 enter 键的弹起,我们需要操作事件对象,来检测用户使用了哪个键&#…...
25、WEB攻防——通用漏洞SQL读写注入MYSQLMSSQLPostgreSQL
文章目录 Mysql-root高权限读写注入PostgreSQL——dba高权限读写注入Mssql-sa高权限读写注入 Access无高权限注入点——只能猜解,而且是暴力猜解; MYSQL,PostgreSQL,MSSQL(SQL server)高权限注入点——可升级读写(文件…...
【第5期】前端Vue使用Proxy+Vuex(store、mutations、actions)跨域调通本地后端接口
本期简介 本期要点 本地开发前后端如何跨域调用全局请求、响应处理拦截器处理封装HTTP请求模块编写API请求映射到后端API数据的状态管理 一、 本地开发前后端如何跨域调用 众所周知,只要前端和后端的域名或端口不一样,就存在跨域访问,例如&…...
在Visual Studio(VS)编译器中,Release和Debug区别
一、 优化级别 1、Debug(调试) 在Debug模式下,编译器不会对代码进行优化,而是专注于生成易于调试的代码。这使得开发者可以在调试过程中更直观地跟踪变量的值和程序的执行流程。 2、Release(发布) 在Relea…...
子网划分问题(实战超详解)_主机分配地址
文章目录: 子网划分的核心思想 第一步,考虑借几位作为子网号 第二步,确定子网的网络地址 第三步,明确网络地址,广播地址,可用IP地址范围 一些可能出现的疑问 实战 题目一 子网划分的核心思想 网络号不变,借用主机号来产生新的网络 划分前的网络:网络号主机号 划分后的网络:原网…...
【QT】单例模式,Q_GLOBAL_STATIC 宏的使用和使用静态成员函数,eg:{简单的日志记录器}
简单的日志记录器为例 。 创建一个Logger类,该类负责记录应用程序的日志消息 使用 Q_GLOBAL_STATIC 宏 解析:Q_GLOBAL_STATIC 是一个 Qt 宏,用于创建全局静态实例。它确保在需要时只创建一次实例,而不管该实例是在哪个线程中创建…...
利用小红书笔记详情API:构建高效的内容创作与运营体系
随着社交媒体的兴起,小红书作为国内知名的内容分享平台,吸引了大量用户和内容创作者。为了更好地获取小红书上的优质内容,许多企业和开发者选择使用小红书笔记详情API。本文将探讨如何利用该API构建高效的内容创作与运营体系。 一、小红书笔记…...
【K8S 二进制部署】部署单Master Kurbernetes集群
目录 一、基本架构和系统初始化 1、集群架构: 2、操作系统初始化配置: 2.1、关闭防火墙和安全机制: 2.2、关闭swap 2.3、根据规划设置主机名 2.4、三台主机全部互相映射 2.5、调整内核参数 3、时间同步(所有节点时间必须同…...
vue中常见的指令
简单介绍一下常见的vue中用到的指令 v-on 指定当前的事件,语法糖为,如例子所示,指定按钮的事件为addCounter,点击会使变量counter 1 <!DOCTYPE html> <html><head><meta charset"utf-8" />…...
单片机原理及应用:开关控制LED多种点亮模式
从这篇文章开始,我们不再只研究单一的外设工作,而是将LED、数码管、开关、按键搭配在一起研究,这篇文章主要介绍LED和开关能擦出怎样的火花,同时也介绍一些函数封装的知识。 由于开关有闭合与打开两种状态,LED有左移流…...
你真的了解UVM sequence的运行机制吗
1. 前言 UVM在sequence里提供了很多的callback方法给用户,从而更灵活地完成各种复杂场景的交互和控制执行顺序。我们可能在很多情况下只使用了body()方法,本文将介绍sequence里常见的callback方法,以及在不同场景下,它们的是否被…...
Bug升级记
2023.12.28 (1) 小程序session_key泄露隐患 核心:session_key这个字段及对应值不应该传到小程序客户端等服务器外的环境 错误操作:直接在小程序调用https://api.weixin.qq.com/sns/jscode2session并将session_key作为参数进行明文传输 正确操…...
爬虫详细教程第1天
爬虫详细教程第一天 1.爬虫概述1.1什么是爬虫?1.2爬虫工具——Python1.3爬虫合法吗?1.4爬虫的矛与盾1.4.1反爬机制1.4.2反爬策略1.4.3robots.txt协议 2.爬虫使用的软件2.1使用的开发工具: 3.第一个爬虫4.web请求4.1讲解一下web请求的全部过程4.2页面渲染…...
[Linux] MySQL数据库的备份与恢复
一、数据库备份的分类和备份策略 1.1 数据库备份的分类 1)物理备份 物理备份:对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。 物理备份方法: 冷备份(脱机备份) :是在关闭数据库的时候进…...
龙岗区最新通告/提高seo关键词排名
goldengate for sqlserver 日志暴涨的解决办法 gg for sqlserver 2008 R2 开启后,sqlserver的日志会出现暴涨的情况,解决办法如下: 1.先确认是否数据库设置问题导致 如: 1)查看ggerror中,是否有报错! 2)…...
小程序推广app/网络推广seo
简单工厂模式:简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族…...
wordpress自带搜索引擎/今日国内最新新闻
关于制作数据集的label: 在P7视频的最后,写了这段,用来重新命名文件的label的img 和 label 的管理方法,有两种: 1、用img所在文件夹的名称,作为label; 2、img在一个文件夹,label在另…...
360网站建设/西安seo培训
成为Excel精英真不容易啊,正则表达式必须拿下! ()可以让括号内作为一个整体产生重复Sub t29()Dim regx As New RegExpDim srsr "A3A3QA3A37BDFE87A8"With regx.Global True.Pattern "((A3){2})" 相当于A3A3Debug.Print .Replace(…...
番禺网页设计公司/厦门seo代理商
1,请问一个完整的操作系统,应该包含哪些部分?答:两部分:(1)核心与其提供的接口工具。(2)利用核心提供的接口工具所开发的软件。2,UNIX 是谁写出来的?GNU计划是…...
建设设计网站公司/营销策划公司经营范围
前两天机房c2机子的系统崩了,一直要研究重新装系统的事,虽然是才开始接触机房,但是有一点必须很清楚,学生机c盘绝对安装了不少学生的教学软件,关键是这些软件必须是版本一致,状态一致,那么如果自…...