每日一练(编程题-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 271int8
无符号8位整数 0 0 0 ~ 2 8 − 1 2^8-1 281unit8
有符号16位整数 − 2 15 -2^{15} 215 ~ 2 15 − 1 2^{15}-1 2151int16
无符号16位整数 0 0 0 ~ 2 16 − 1 2^{16}-1 2161unit16
有符号32位整数 − 2 31 -2^{31} 231 ~ 2 31 − 1 2^{31}-1 2311int32
无符号32位整数 0 0 0 ~ 2 32 − 1 2^{32}-1 2321unit32
有符号64位整数 − 2 63 -2^{63} 263 ~ 2 63 − 1 2^{63}-1 2631int64
无符号64位整数 0 0 0 ~ 2 64 − 1 2^{64}-1 2641unit64

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;
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/228258.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flask文件夹列表改进版--Bug追踪

把当前文件夹下的所有文件夹和文件列出来&#xff0c;允许点击返回上层目录&#xff0c;允许点击文件夹进入下级目录并显示此文件夹内容 允许点击文件进行下载 from flask import Flask, render_template, send_file, request, redirect, url_for import osapp Flask(__name_…

QT编译并部署QtMqtt相关环境+跑测demo【超详细教程】

文章目录 概要整体架构流程▷下载指定版本的QMqtt源码&#xff1a;▷编译后同步MQTT相关文件&#xff1a; 技术名词解释技术实现步骤详解一、编译源码1、编译报错2、解决思路3、编译通过 二、继续完善mqtt应用环境1、打开编译生成的shadow build文件夹2、同步lib3、同步bin4、同…

FA对接FC流程

2、FA进行对接 &#xff08;1&#xff09;首先安装好AD域控服务器DHCPDNS&#xff08;注意&#xff0c;不要忘记了做DNS正反向解析&#xff0c;就是把已经安装了ITA的主机做解析&#xff09;&#xff0c;在里面创建域用户 &#xff08;2&#xff09;安装ITA和VAG/VLB&#xf…

4.32 构建onnx结构模型-Erf

前言 构建onnx方式通常有两种&#xff1a; 1、通过代码转换成onnx结构&#xff0c;比如pytorch —> onnx 2、通过onnx 自定义结点&#xff0c;图&#xff0c;生成onnx结构 本文主要是简单学习和使用两种不同onnx结构&#xff0c; 下面以 Erf 结点进行分析 方式 方法一&…

R306指纹识别模块指令系统

一&#xff1a;指令集 1. GR_GetImage 指令代码&#xff1a;01H 功能&#xff1a;从传感器上读入图像存于图像缓冲区 2. GR_GenChar 指令代码&#xff1a;02H 功能&#xff1a;根据原始图像生成指纹特征存于 CharBuffer1 或 CharBuffer2 3. GR_Match 指令代码&#xff…

【操作系统xv6】学习记录1

前置说明&#xff1a; git-v9版本&#xff1a;git clone https://github.com/mit-pdos/xv6-public/tree/xv6-rev9 bili:https://www.bilibili.com/video/BV15r4y1z75F 深圳大学罗秋明老师的课程 我自己用的wsl2的ubuntu18 无桌面版本 make qemu-nox bug 起初在双系统的ubuntu…

matlab列优先与高维矩阵重构

由于matlab在列化a(:)以及reshape(a)等操作中是列优先的&#xff0c;所以要重构出新的高维度矩阵&#xff0c;通常要把reshape和permute结合起来使用。 先到 http://caffe.berkeleyvision.org/ 下载 训练好的model bvlc_reference_caffenet.caffemodel; 更多caffe使用也请参看…

分布式【雪花算法】

雪花算法 背景&#xff1a;在分布式系统中&#xff0c;需要使用全局唯一ID&#xff0c;期待ID能够按照时间有序生成。 **原理&#xff1a;**雪花算法是 64 位 的二进制&#xff0c;一共包含了四部分&#xff1a; 1位是符号位&#xff0c;也就是最高位&#xff0c;始终是0&am…

Python数值型字符串校验(try异常拦截解析)

从键盘输入一行字符串&#xff0c;编写Python代码判定字符串是python“合法”数值。 (笔记模板由python脚本于2023年12月25日 18:00:52创建&#xff0c;本篇笔记适合熟悉Python符串基本数据类型的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.py…

docker +gitee+ jenkins +maven项目 (一)

jenkins环境和插件配置 文章目录 jenkins环境和插件配置前言一、环境版本二、jenkins插件三、环境安装总结 前言 现在基本都是走自动化运维&#xff0c;想到用docker 来部署jenkins &#xff0c;然后jenkins来部署java代码&#xff0c;做到了开箱即用&#xff0c;自动发布代码…

【42页动态规划学习笔记分享】动态规划核心原理详解及27道LeetCode相关经典题目汇总

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推荐--…

DevOps持续交付之容器化CICD流水线

DevOps持续交付 随着DevOps⼤规模化的落地和应⽤&#xff0c;持续集成以及持续交付已经是⼀种常态的。CI指的是持续集成&#xff0c;使⽤的开源⼯具是Jenkins&#xff0c;CD指的是持续交付和持续部署&#xff0c;⼀个完整的软件开发⽣命周期为: 主要流程可以具体为: 构建阶段…

【K8S 部署】基于kubeadm搭建Kurbernetes集群

目录 一、基本架构 二、环境准备: 三、安装部署 1、所有节点安装docker 2、、所有节点安装kubeadm&#xff0c;kubelet和kubectl 3、配置网络--flannel 4、测试 pod 资源创建 四、安装部署与k8s集群对接的Harbor仓库 五、Dashboard安装部署&#xff1a; 一、基本架构…

mac 生成 本地.ssh

输入下面命令行 ssh-keygen 默认回车得到下面的 Generating public/private rsa key pair. Enter file in which to save the key (/Users/{用户名}/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has be…

论文阅读——SG-Former

SG-Former: Self-guided Transformer with Evolving Token Reallocation 1. Introduction 方法的核心是利用显著性图&#xff0c;根据每个区域的显著性重新分配tokens。显著性图是通过混合规模的自我关注来估计的&#xff0c;并在训练过程中自我进化。直观地说&#xff0c;我们…

文件监控-IT安全管理软件

文件监控和IT安全管理软件是用于保护企业数据和网络安全的工具。这些工具可以帮助企业监控文件的变化&#xff0c;防止未经授权的访问和修改&#xff0c;并确保数据的安全性和完整性。 一、具有哪些功能 文件监控软件可以实时监控文件系统的活动&#xff0c;包括文件的创建、修…

C++继承与派生——(8)多继承

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 苦难和幸福一样&#xff0c;都是生命盛…

接入Cloudflare后Nginx和Django获取用户真实IP的办法

可以用Nginx的real_ip的相关命令来实现这个需求。 01-real_ip命令集详解 real_ip命令的使用分为两个步骤: 01-1-设置从哪些代理IP获取真实IP 第1个步骤&#xff1a;通过set_real_ip_from命令设置从哪些代理IP请求获取真实的IP,比如下面的命令&#xff1a; set_real_ip_from…

深入解析泛型

一、泛型的诞生 在C#1 中我们还没有泛型的时候我们收集数据通常需要使用到数组&#xff0c;或者使用封装好的数组集合Hashtable ArrayList。 举个例子&#xff1a; 我们在读取文件的时候就会需要一个数组来储存读取的数据的内容 但我们并不知数据的具体长度也就无法在声明的…

信息安全概论考试题目

文章目录 一、计算题二、网络安全协议应用(30 分)三、材料分析(15 分)四、系统安全配量(共 15 分) 一、计算题 1、Playfair 算法属于经典对称加密方式。曾经在相当长的一段时期内&#xff0c;Playfair算法被认为是一种牢不可破的加密方法。现有明文 introduction to informati…