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

2021年03月 C/C++(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

在这里插入图片描述

第1题:找和为K的两个元素

在一个长度为n(n < 1000)的整数序列中,判断是否存在某两个元素之和为k。
时间限制:1000
内存限制:65536
输入
第一行输入序列的长度n和k,用空格分开。 第二行输入序列中的n个整数,用空格分开。
输出
如果存在某两个元素的和为k,则输出yes,否则输出no。
样例输入
9 10
1 2 3 4 5 6 7 8 9
样例输出
yes

要解决这个问题,可以使用双重循环来遍历所有可能的元素对,判断它们的和是否等于给定的目标值k。

以下是解题的基本思路:

(1)读取输入的序列长度n和目标和k。

(2)创建一个长度为n的整数数组,用于存储输入的序列。

(3)使用一个外部循环,遍历数组中的每个元素,假设当前元素为nums[i]。

(4)在外部循环内部,使用一个内部循环,从当前元素的下一个位置开始遍历数组中的其他元素,假设当前元素为nums[j]。

(5)在内部循环中,判断nums[i]和nums[j]的和是否等于目标和k。

  • 如果相等,表示找到了一对元素的和为k,输出"yes",并结束程序。

  • 如果不相等,则继续内部循环,遍历下一个元素。

(6)如果遍历完所有元素后仍未找到满足条件的元素对,输出"no"。

这个算法的时间复杂度为O(n^2),其中n为序列的长度。由于题目给出的时间限制为1000,这个算法在输入规模不超过1000时可以在给定时间内解决问题。

下面是一个使用C语言编写的解决方案:

#include <stdio.h>int main() {int n, k;scanf("%d %d", &n, &k);int nums[1000];for (int i = 0; i < n; i++) {scanf("%d", &nums[i]);}int found = 0;for (int i = 0; i < n; i++) {for (int j = i + 1; j < n; j++) {if (nums[i] + nums[j] == k) {found = 1;break;}}if (found) {break;}}if (found) {printf("yes\n");} else {printf("no\n");}return 0;
}

这段代码首先读取输入的序列长度n和目标和k,然后读取n个整数到数组nums中。接下来,使用嵌套的for循环遍历所有可能的元素对,判断它们的和是否为k。如果找到一对和为k的元素,将found标记为1,并跳出循环。最后,根据found的值输出结果。

请注意,根据题目的要求,序列长度n不会超过1000,因此我们在代码中定义了一个长度为1000的数组nums来存储输入的整数序列。

第2题:Minecraft

Minecraft是一个几乎无所不能的沙盒游戏,玩家可以利用游戏内的各种资源进行创造,搭建自己的世界。
在Minecraft中,基本的建筑元素是边长为1个单位的立方体,Tony想用N个这种小立方体搭建一个长方体,并用他珍藏已久的贴纸对其进行装饰。如果一张贴纸可以贴满小立方体的一个面。那么,他需要用掉多少张贴纸呢?
时间限制:1000
内存限制:65536
输入
一个整数N,表示小明所拥有的小立方体的个数。N不会超过1000。
输出
一个整数,即小明最少用掉的贴纸有多少张。
样例输入
9
样例输出
30

这个问题可以通过计算来解决。我们知道一个长方体有6个面,每个面都需要用贴纸覆盖。而每个面都由多个小立方体组成,每个小立方体需要用一张贴纸覆盖。

以下是解题的基本思路:

(1)读取输入的小立方体的个数N。

(2)计算需要覆盖的面的总数,即6个面的总和。

(3)将需要覆盖的面的总数乘以N,得到所需的贴纸数量。

(4)输出所需的贴纸数量。

以下是使用C语言编写的解决方案:

#include <stdio.h>int main() {int N;scanf("%d", &N);int total_faces = 6;  // 一个长方体有6个面int stickers = total_faces * N;printf("%d\n", stickers);return 0;
}

这段代码首先读取输入的小立方体的个数N。然后,计算需要覆盖的面的总数,即6个面的总和。最后,将需要覆盖的面的总数乘以N,得到所需的贴纸数量。最后,输出所需的贴纸数量。

根据题目的要求,小立方体的个数N不会超过1000,因此我们可以直接在计算过程中处理较大的数值。

第3题:踩方格

有一个方格矩阵,矩阵边界在无穷远处。我们做如下假设:
a. 每走一步时,只能从当前方格移动一格,走到某个相邻的方格上;
b. 走过的格子立即塌陷无法再走第二次;
c. 只能向北、东、西三个方向走;
请问:如果允许在方格矩阵上走n步,共有多少种不同的方案。2种走法只要有一步不一样,即被认为是不同的方案。
时间限制:1000
内存限制:65536
输入
允许在方格上行走的步数n(n <= 20)
输出
计算出的方案数量
样例输入
2
样例输出
7

这个问题可以使用递归的方式来解决。每一步可以选择向北、东、西三个方向中的一个方向前进,然后在下一步中继续做出相同的选择,直到步数达到限制或无法再继续移动为止。

以下是解题的基本思路:

(1)读取输入的允许在方格上行走的步数n。

(2)定义一个递归函数countPaths,接受两个参数:当前位置的坐标(x, y)和剩余步数remainingSteps。

(3)在递归函数中,首先判断剩余步数是否为0,如果是则返回1,表示找到一种方案。

(4)否则,定义一个变量count初始值为0,用于记录方案数量。

(5)在递归函数中,分别递归调用countPaths函数,传入向北、东、西三个方向移动一步后的新坐标和剩余步数减1,将返回的结果累加到count中。

(6)最后,返回count作为当前位置和剩余步数的方案数量。

(7)在主函数中,调用countPaths函数,传入初始位置(0, 0)和允许的步数n,将返回的方案数量输出。

以下是使用C语言编写的解决方案:

#include <stdio.h>int countPaths(int x, int y, int remainingSteps) {if (remainingSteps == 0) {return 1;}int count = 0;count += countPaths(x, y + 1, remainingSteps - 1);  // 向北移动一步count += countPaths(x + 1, y, remainingSteps - 1);  // 向东移动一步count += countPaths(x - 1, y, remainingSteps - 1);  // 向西移动一步return count;
}int main() {int n;scanf("%d", &n);int totalPaths = countPaths(0, 0, n);printf("%d\n", totalPaths);return 0;
}

这段代码首先读取输入的允许在方格上行走的步数n。然后,定义了一个递归函数countPaths来计算方案数量。在递归函数中,首先判断剩余步数是否为0,如果是则返回1,表示找到一种方案。否则,定义一个变量count用于记录方案数量,并分别递归调用countPaths函数,传入向北、东、西三个方向移动一步后的新坐标和剩余步数减1,将返回的结果累加到count中。最后,返回count作为当前位置和剩余步数的方案数量。

在主函数中,调用countPaths函数,传入初始位置(0, 0)和允许的步数n,将返回的方案数量输出。

根据题目的要求,允许在方格上行走的步数n不会超过20,因此递归的深度不会过大,可以在给定时间内解决问题。

第4题:苹果消消乐

有100个苹果和香蕉排成一条直线,其中有N个香蕉,你可以使用至多M次魔法道具将香蕉变成苹果,最后“最长的连续苹果数量”即为你本次苹果消消乐的得分,给定苹果和香蕉的排列,求你能获得的最大得分。
时间限制:1000
内存限制:65536
输入
第一行是一个整数T(1 <= T <= 10),代表测试数据的组数。 每个测试数据第一行是2个整数N和M(0 <= N, M <= 100)。第二行包含N个整数a1, a2, … aN(1 <= a1 < a2 < … < aN <= 100),表示第a1, a2, … aN个位置上摆放的是香蕉。
输出
对于每组数据,输出通过使用魔法道具后你能获得的最大得分。
样例输入
3
5 1
34 77 82 83 84
5 2
10 30 55 56 90
5 10
10 30 55 56 90
样例输出
76
59
100
提示
这是个枚举题

这个问题可以通过枚举的方式来解决。我们可以遍历每个位置,将其作为连续苹果的起始位置,然后向后遍历苹果和香蕉的排列,同时记录使用魔法道具的次数。在遍历过程中,如果遇到香蕉,且还有剩余的魔法道具可用,则将香蕉变成苹果,并增加得分。最后,找到最大的得分即可。

以下是解题的基本思路:

(1)读取输入的测试数据组数T。

(2)对于每组测试数据,读取香蕉和苹果的个数N和M。

(3)读取N个整数,表示香蕉的位置。

(4)初始化最大得分maxScore为0。

(5)遍历每个位置i作为连续苹果的起始位置:

  • 初始化当前得分score为0。

  • 初始化剩余魔法道具次数remainingMagic为M。

  • 遍历位置j从i到100:

    • 如果j是香蕉的位置且remainingMagic大于0,则将香蕉变成苹果,增加得分score,并减少剩余魔法道具次数remainingMagic。

    • 否则,增加得分score。

    • 如果得分score大于最大得分maxScore,则更新最大得分maxScore。

(6)输出最大得分maxScore。

以下是使用C语言编写的解决方案:

#include <stdio.h>int main() {int T;scanf("%d", &T);while (T--) {int N, M;scanf("%d %d", &N, &M);int bananas[N];for (int i = 0; i < N; i++) {scanf("%d", &bananas[i]);}int maxScore = 0;for (int i = 0; i < 100; i++) {int score = 0;int remainingMagic = M;for (int j = i; j < 100; j++) {if (remainingMagic > 0 && j == bananas[score]) {remainingMagic--;score++;} else {score++;}if (score > maxScore) {maxScore = score;}}}printf("%d\n", maxScore);}return 0;
}

这段代码首先读取输入的测试数据组数T。然后,对于每组测试数据,读取香蕉和苹果的个数N和M,以及N个整数表示香蕉的位置。接下来,初始化最大得分maxScore为0,并进行枚举遍历。在遍历过程中,对于每个位置i作为连续苹果的起始位置,初始化当前得分score为0和剩余魔法道具次数remainingMagic为M。然后,遍历位置j从i到100,根据香蕉的位置和剩余魔法道具次数更新得分score,并更新最大得分maxScore。最后,输出最大得分maxScore。

根据题目的要求,测试数据组数T不会超过10,枚举的范围在100内,因此可以在给定时间内解决问题。

第5题:流感传染

有一批易感人群住在网格状的宿舍区内,宿舍区为n*n的矩阵,每个格点为一个房间,房间里可能住人,也可能空着。在第一天,有些房间里的人得了流感,以后每天,得流感的人会使其邻居传染上流感,(已经得病的不变),空房间不会传染。请输出第m天得流感的人数。
时间限制:1000
内存限制:65536
输入
第一行一个数字n,n不超过100,表示有n*n的宿舍房间。 接下来的n行,每行n个字符,’.’表示第一天该房间住着健康的人,’#’表示该房间空着,’@’表示第一天该房间住着得流感的人。 接下来的一行是一个整数m,m不超过100.
输出
输出第m天,得流感的人数
样例输入
5
…#
.#.@.
.#@…
#…

4
样例输出
16

这个问题可以使用广度优先搜索(BFS)来解决。我们可以将所有初始感染的人作为起始节点,然后以它们为中心向外扩散,每次将感染传播到相邻的健康人,直到达到指定的天数。

以下是解题的基本思路:

(1)读取输入的宿舍房间大小n。

(2)创建一个n*n的二维字符数组rooms来表示宿舍房间的状态。

(3)读取n行字符,将它们存储到rooms数组中。

(4)读取指定的天数m。

(5)创建一个队列,用于存储当前感染的人的坐标。

(6)遍历rooms数组,将初始感染的人的坐标加入队列。

(7)创建一个整数变量infectedCount,并将其初始值设置为队列的长度,表示初始感染的人数。

(8)创建一个整数变量days,并将其初始值设置为1,表示第一天。

(9)使用BFS算法进行传播:

  • 创建一个整数变量nextInfectedCount,用于记录下一天感染的人数。

  • 在循环中,从队列中取出一个感染的人的坐标。

  • 遍历该人的相邻人,如果相邻的人是健康的,则将其感染,并将其坐标加入队列。

  • 每次遍历一个感染的人的相邻人后,将nextInfectedCount增加相应的数量。

  • 如果队列不为空,则表示还有感染的人未传播完,将days增加1,更新infectedCount为nextInfectedCount。

  • 如果队列为空,则表示感染已经传播完,退出循环。

(10)如果指定的天数m大于等于第一天,则根据m和第一天的差值,使用BFS算法继续传播,直到达到指定的天数。

(11)输出最后一天感染的人数infectedCount。

以下是使用C语言编写的解决方案:

#include <stdio.h>#define MAX_N 100typedef struct {int x;int y;
} Coordinate;int main() {int n;scanf("%d", &n);char rooms[MAX_N][MAX_N];for (int i = 0; i < n; i++) {scanf("%s", rooms[i]);}int m;scanf("%d", &m);int dx[] = {-1, 0, 1, 0};int dy[] = {0, 1, 0, -1};Coordinate queue[MAX_N * MAX_N];int front = 0;int rear = 0;for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if (rooms[i][j] == '@') {Coordinate coord = {i, j};queue[rear++] = coord;}}}int infectedCount = rear;int days = 1;while (days < m) {int nextInfectedCount = 0;while (front < rear) {Coordinate current = queue[front++];for (int k = 0; k < 4; k++) {int nx = current.x + dx[k];int ny = current.y + dy[k];if (nx >= 0 && nx < n && ny >= 0 && ny < n && rooms[nx][ny] == '.') {rooms[nx][ny] = '@';Coordinate newCoord = {nx, ny};queue[rear++] = newCoord;nextInfectedCount++;}}}if (front == rear) {break;}days++;infectedCount += nextInfectedCount;}printf("%d\n", infectedCount);return 0;
}

这段代码首先读取输入的宿舍房间大小n,并创建一个n*n的二维字符数组rooms来表示宿舍房间的状态。然后,通过循环读取n行这个问题可以通过广度优先搜索(BFS)来解决。我们可以将感染的人作为起始点,然后以他们为中心向外扩散,每次将感染传播到相邻的健康人,直到达到指定的天数。

相关文章:

2021年03月 C/C++(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题&#xff1a;找和为K的两个元素 在一个长度为n(n < 1000)的整数序列中&#xff0c;判断是否存在某两个元素之和为k。 时间限制&#xff1a;1000 内存限制&#xff1a;65536 输入 第一行输入序列的长度n和k&#xff0c;用空格分开。 第二行输入序列中的n个整数&#xff…...

GPT-5出世?OpenAI GPT-5商标已注册

OpenAI的GPT已经成为了业界标杆&#xff0c;升级速度之快让人瞠目&#xff0c;别人追GPT-3.5的时候GPT-4横空出世&#xff0c;差距被拉开了&#xff0c;现在GPT-5就要来了。 据商标律师泄露的消息&#xff0c;OpenAI已于7月18日注册了GPT-5商标。虽然注册商标并不罕见&#xf…...

优雅的使用 Dockerfile 定制镜像

一、使用 Dockerfile 定制镜像 1.1、Dockerfile 定制镜像 镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本&#xff0c;用这个脚本来构建、定制镜像&#xff0c;无法重复的问题、镜像构建透明性的问题、…...

limit的用法mysql

当你在 MySQL 数据库中使用 LIMIT 语句&#xff0c;它可以用于限制查询结果的行数。这在分页查询或者限制返回的数据量时非常有用。下面是一些示例&#xff1a; 返回前几行数据&#xff1a; SELECT * FROM Customers LIMIT 5;这将返回 Customers 表中的前 5 行数据。 分页查…...

clickhouse Checksum doesn‘t match: 问题修复

1. 问题描述 SQL 错误 [40] [07000]: Code: 40. DB::Exception: Checksum doesnt match: corrupted data. Reference: 50e8c1efa78de2881b725d44b04be1fe. Actual: 161c99eb681ec36b83540ecdd65ad8c9. Size of compressed block: 32846. The mismatch is caused by single bit…...

企业如何开展个人信息安全影响评估(PIA)二

基本概念 根据《信息安全 技术个人信息安全影响评估指南》&#xff08;GB/T 39335—2020&#xff1b;personal information security impact assessment&#xff0c;简称“PIA”&#xff09;&#xff0c;个人信息安全影响评估是指针对个人信息处理活动&#xff0c;检验其合法合…...

android TextView 超出长度使用省略号

在Android中最常见的需求&#xff0c;就是在在外部展示信息时&#xff0c;需要简要展示内容。TextView仅需在静态布局文件中设置以下几个属性&#xff1a; android:maxWidth“100dp” // 宽度是多少才算超出 android:maxLines"2" // 高度多少才算超出 android:elli…...

c++ | 字节转换 | 字长 | 机器位数

为什么有的时候脑子转不过来&#xff1f;&#xff1f; 为什么要对字节、机器长啊、位啊都要门清 位数 一般的就是指计算机的位数&#xff0c;比如64位/32位&#xff0c;更简单的理解&#xff0c;计算机就是在不停的做二进制的计算&#xff0c;比如32位计算机&#xff0c;在长…...

7-4 交换最小值和最大值

分数 15 全屏浏览题目 切换布局 作者 C课程组 单位 浙江大学 本题要求编写程序&#xff0c;先将输入的一系列整数中的最小值与第一个数交换&#xff0c;然后将最大值与最后一个数交换&#xff0c;最后输出交换后的序列。 注意&#xff1a;题目保证最大和最小值都是唯一的。…...

解决Pycharm的Settings中Project不见了也无法选择Python Interpreter的方法

目录 一、问题如下二、解决方法 一、问题如下 突然打开项目没有python解释器&#xff0c;也无法重新配置python Interpreter&#xff0c;而且整个文件夹是黄色高亮的形式&#xff0c;如下显示&#xff0c;而且重新安装了pycharm也没用甚至说打开File–>Setting–>Projec…...

AWS EKS 集群自动扩容 Cluster Autoscaler

文章目录 一&#xff0c;需求工作需求说明 二&#xff0c;部署精简命令执行1&#xff0c;要求2&#xff0c;查看EC2 Auto Scaling groups Tag3&#xff0c;创建Serviceaccount需要的Policy&#xff0c;Role4&#xff0c;部署Cluster Autoscaler5&#xff0c;验证6&#xff0c;常…...

excel中有哪些通配符、excel配置问题,数学函数篇1之sum系列

学习excel前需要明确的是事&#xff1a;   在学习excel函数之前&#xff0c;大家需要明确一件事&#xff0c;excel现在设计到了一些新函数&#xff0c;这些新函数只能存在于office365、office2019及更 新版本之中&#xff0c;所以建议大家在学习时安装较新的版本&#xff0c;…...

工控行业需要熟悉的工业级通信协议

1. Modbus RTU Modbus RTU 是一种串行通信协议&#xff0c;常用于工控行业。它具有以下特点和优势&#xff1a; 采用二进制编码&#xff0c;数据传输更加高效。支持多种传输介质&#xff0c;如RS-232、RS-485等。容易实现和使用&#xff0c;适用于各种设备。具备强大的错误检…...

力扣题解(1030. 距离顺序排列矩阵单元格),带注释

题目描述 链接:点我 注意&#xff1a;多看几遍题目&#xff0c;开始没看懂…相当于计算矩阵网格里面的点&#xff08;不要计算边界&#xff09; 我开了题解才明白题的意思 orz… 题解 class Solution {public int[][] allCellsDistOrder(int rows, int cols, int rCenter, …...

每天一道leetcode:剑指 Offer 34. 二叉树中和为某一值的路径(中等图论深度优先遍历递归)

今日份题目&#xff1a; 给你二叉树的根节点 root 和一个整数目标和 targetSum &#xff0c;找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例1 输入&#xff1a;root [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSu…...

利用POM完成脚本分离实现企业级自动化(POM设计模式+页面的框架封装+测试报告截图)

利用POM完成脚本分离实现企业级自动化&#xff08;POM设计模式页面的框架封装测试报告截图&#xff09; 项目-测试-手工测试 项目-测试-手工测试 1.了解需求&#xff1b; 2.编写测试用例&#xff08;开始&#xff09;——功能测试组会去做的事情 3.执行测试用例——发送测试报…...

嵌入式设计中对于只有两种状态的变量存储设计,如何高效的对循迹小车进行偏差量化

前言 &#xff08;1&#xff09;在嵌入式程序设计中&#xff0c;我们常常会要对各类传感器进行数据存储。大多时候的传感器&#xff0c;例如红外光传感器&#xff0c;返回的数据要么是0&#xff0c;要么是1。因此&#xff0c;只需要一bit就能够存储。而很多人却常常使用char型数…...

day53 第九章 动态规划part14● 1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划

1143. 最长公共子序列 class Solution {public int longestCommonSubsequence(String text1, String text2) {int m text1.length();int n text2.length();int[][] dp new int[m 1][n 1];for (int i 1; i < m; i) {for (int j 1; j < n; j) {if (text1.charAt(i …...

shell编程 基础

将content.txt文件中的内容输出到控制台上 将content.txt中有tom的行输出到控制台 将$2文件中含有gree的行输出到控制台 case语法 简易计算器 查找有root的行 查找以root开头的行 查询时忽略大小写 grep -E 则适用于复杂的正则表达式&#xff0c;可以使用多项选择、重复和子表达…...

人工智能在网络安全中的应用: 分析人工智能、机器学习和深度学习等技术在预测、检测和应对网络攻击中的作用

第一章&#xff1a;引言 随着信息技术的迅猛发展&#xff0c;网络安全已成为当今社会不容忽视的重要议题。网络攻击手法日益复杂&#xff0c;传统的防御方法已经不再足够。在这一背景下&#xff0c;人工智能&#xff08;AI&#xff09;技术正逐渐崭露头角&#xff0c;为网络安…...

使用 Redis 实现异步队列

使用 Redis 实现异步队列 一、简介1 异步队列2 异步队列与同步队列 二、Redis 实现异步队列1 利用 Redis 的 List 数据类型实现异步队列2 利用 Redis 的 Pub/Sub 功能实现异步队列3 利用 Redis 的 Sorted Set 数据类型实现延迟队列 三、Redis 异步队列的实际应用场景4.1 异步任…...

RocketMQ、Dashboard部署以及安全设置

RocketMQ、dashboard部署以及安全设置 一、启动RocketMQ1.1 下载RocketMQ1.2 修改配置文件1.2.1 修改nameServer Jvm内存配置1.2.2 修改broker参数 1.3 启动1.3.1 启动NameServer1.3.2 启动Broker1.3.3 测试是否启动成功1.3.3.1 测试消息发送1.3.3.2 测试消息接收1.3.3.3 Java程…...

Android AlarmManager设置闹钟

官网镇楼&#xff1a;设置重复闹铃时间 闹钟具有以下特征&#xff1a; 它们可让您按设定的时间和/或间隔触发 intent。您可以将它们与广播接收器结合使用&#xff0c;以启动服务以及执行其他操作。它们在应用外部运行&#xff0c;因此即使应用未运行&#xff0c;或设备本身处…...

【C# 基础精讲】LINQ to XML查询

LINQ to XML 是 C# 中用于查询和操作 XML 数据的强大工具。它允许您使用 LINQ 查询语法对 XML 文档进行查询、过滤、投影等操作&#xff0c;从而更加方便地处理 XML 数据。本文将详细介绍 LINQ to XML 的基本概念、常见操作以及示例&#xff0c;帮助您了解如何在 C# 中使用 LIN…...

Java学习笔记——(20)标识符命名规则和规范

什么叫标识符 Java 对各种变量、方法和类等命名时使用的字符序列成为标识符凡是自己可以起名字的地方都叫标识符 标识符的命名规则&#xff08;必须遵守&#xff09; 由26个英文字母大小写&#xff0c;0-9&#xff0c;_ 或 $ 组成数字不可以开头不可以使用关键字和保留字Jav…...

过滤字符,绕过

构造不包含字母和数字的webshell <?phpecho "A"^""; ?>运行结果为! 代码中对字符"A"和字符”"进行了异或操作。在PHP中&#xff0c;两个变量进行异或时&#xff0c;先会将字符串转换成ASCII值&#xff0c;再将ASCII值转换成二进制…...

Apache Doris 入门教程32:物化视图

物化视图 物化视图是将预先计算&#xff08;根据定义好的 SELECT 语句&#xff09;好的数据集&#xff0c;存储在 Doris 中的一个特殊的表。 物化视图的出现主要是为了满足用户&#xff0c;既能对原始明细数据的任意维度分析&#xff0c;也能快速的对固定维度进行分析查询。 …...

PHP substr()函数详解,PHP截取字符串。

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 substr 一、截取字符串二、截取中文字符串三、leng…...

关于flink-sql-connector-phoenix的重写逻辑

目录 重写意义 代码结构 调用链路 POM文件配置 代码解析 一、PhoenixJdbcDynamicTableFactory...

Django进阶:DRF(Django REST framework)

什么是DRF&#xff1f; DRF即Django REST framework的缩写&#xff0c;官网上说&#xff1a;Django REST framework是一个强大而灵活的工具包&#xff0c;用于构建Web API。 简单来说&#xff1a;通过DRF创建API后&#xff0c;就可以通过HTTP请求来获取、创建、更新或删除数据(…...

Flink CDC系列之:Oracle CDC 导入 Elasticsearch

Flink CDC系列之&#xff1a;Oracle CDC 导入 Elasticsearch 一、深入理解Flink Oracle CDC Connector二、创建docker-compose.yml文件三、启动容器四、下载Flink Oracle CDC的jar包五、启动 Flink 集群&#xff0c;再启动 SQL CLI六、检查 ElasticSearch 中的结果七、在 Oracl…...

Linux忘记root密码解决方法

当我们忘记root密码进不去服务器怎么办&#xff1f;不要担心&#xff0c;可以进入到linux的救援模式修改root密码。 下面直接上干货&#xff0c;流程如下&#xff1a; 1.重启电脑&#xff0c;按上下键滑动&#xff0c;保证不进入开机流程&#xff0c;然后按e键 2.出现此页面…...

AR/VR眼镜转接器方案,实现同时传输视频快充方案

简介 虚拟现实头戴显示器设备&#xff0c;简称VR头显VR眼镜&#xff0c;是利用仿真技术与计算机图形学人机接口技术多媒体技术传感技术网络技术等多种技术集合的产品&#xff0c;是借助计算机及最新传感器技术创造的一种崭新的人机交互手段。VR头显VR眼镜是一个跨时代的产品。不…...

ASP.NET Core中路由规则匹配

RESTful约束&#xff0c;如果在一个控制器里面有多个Get、Post...的操作 1、在一个控制器里面可以定义多个API方法 2、通过路由规则来区分 /// <summary> /// 获取用户信息 /// </summary> /// <param name"user"></param> /// <returns…...

IDEA:Error running,Command line is too long. 解决方法

报错如下&#xff1a; Error running SendSmsUtil. Command line is too long. Shorten the command line via JAR manifest or via a classpath file and rerun.原因是启动命令过长。 解决方法&#xff1a; 1、打开Edit Configurations 2、点击Modify options设置&#x…...

什么是反射机制?为什么反射慢?

目录 面试回答 知识扩展 反射常见的使用方式 反射和 Class 的关系 面试回答 反射指的是程序在运行时能够获取自身的信息。在 java 中&#xff0c;只要给定类的名字&#xff0c;那么就可以通过反射机制来获得类的所有属性和方法。 Java 的反射可以&#xff1a; 在运行时判断…...

list元素

列表元素 列表元素分为有序列表和无序列表 有序列表 ol – order list – 有序列表 li – list item – 列表元素 <ol type"1"><li>有序列表1</li><li>有序列表2</li><li>有序列表3</li> </ol>属性 type type属…...

OkHttp 源码浅析一

演进之路:原生Android框架不好用 ---- HttpUrlConnect 和 Apache HTTPClient 第一版 底层使用HTTPURLConnect 第二版 Square构建 从Android4.4开始 基本使用: val okhttp OkHttpClient()val request Request.Builder().url("http://www.baidu.com").buil…...

【解决问题】远程仓库GitHub/GitLab添加了SSH Key之后依然无法clone的解决办法

GitHub/GitLab添加了SSH Key之后依然无法clone的解决办法 问题现象解决办法 问题现象 在Git远程仓库添加了自己的ssh key到账户下&#xff0c;git clone时&#xff0c;依然报错clone失败&#xff0c;请检查是否没有权限进行clone操作。 解决办法 在git的安装目录下&#xff…...

回归预测 | MATLAB实现SA-SVM模拟退火算法优化支持向量机多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现SA-SVM模拟退火算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现SA-SVM模拟退火算法优化支持向量机多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09;效果一览基本…...

Spring事务和事务传播机制(1)

前言&#x1f36d; ❤️❤️❤️SSM专栏更新中&#xff0c;各位大佬觉得写得不错&#xff0c;支持一下&#xff0c;感谢了&#xff01;❤️❤️❤️ Spring Spring MVC MyBatis_冷兮雪的博客-CSDN博客 在Spring框架中&#xff0c;事务管理是一种用于维护数据库操作的一致性和…...

如何快速在vscode中实现不同python文件的对比查看

总体而言&#xff1a;两种方式。一种是直接点击vscode右上角的图标&#xff08;见下图&#xff09;。 另一种方式就是使用快捷键啦“**Ctrl**”&#xff0c;用的时候选中想要对比的python文件&#xff0c;然后快捷键就可以达到下图效果了&#xff1a; 建议大家直接使用第二种…...

网络安全---Ring3下动态链接库.so函数劫持

一、动态链接库劫持原理 1.1、原理 Unix操作系统中&#xff0c;程序运行时会按照一定的规则顺序去查找依赖的动态链接库&#xff0c;当查找到指定的so文件时&#xff0c;动态链接器(/lib/ld-linux.so.X)会将程序所依赖的共享对象进行装载和初始化&#xff0c;而为什么可以使用…...

leetcode283. 移动零

难度&#xff1a;简单题 题目 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 思路&#xff1a; 一开始想&#xff0c;从前往后遍历&am…...

GuLi商城-前端基础Vue-生命周期和钩子函数

下图展示了实例的生命周期。你不需要立马弄明白所有的东西&#xff0c;不过随着你的不断学习和使用&#xff0c;它 的参考价值会越来越高。 VUE 的生命周期指的是组件在创建、运行和销毁过程中所经历的一系列事件&#xff0c;通过这些事件可以 让开发者在不同阶段进行相应的…...

输入输出+暴力模拟入门:魔法之树、染色の树、矩阵、字母加密、玫瑰鸭

秋招实习刷题网站推荐&#xff1a;codefun2000.com&#xff0c;还有题解博客&#xff1a;blog.codefun2000.com/。以下内容都是来自塔子哥的~ 输入输出 2023.04.15-春招-第三题-魔法之树 //#include<bits/stdc.h> #include<vector> #include<iostream>usin…...

​Kubernetes的演变:从etcd到分布式SQL的过渡

DevRel领域专家Denis Magda表示&#xff0c;他偶然发现了一篇解释如何用PostgreSQL无缝替换etcd的文章。该文章指出&#xff0c;Kine项目作为外部etcd端点&#xff0c;可以将Kubernetes etcd请求转换为底层关系数据库的SQL查询。 受到这种方法的启发&#xff0c;Magda决定进一步…...

29、简单通过git把项目远程提交到gitee

简单通过git把项目远程提交到gitee 1、在gitee上创建一个仓库 2、在要提交的项目文件夹打开git 输入 git init 初始化git 然后设置下用户名和邮箱 git config --global user.name “username” git config --global user.email “yourEmail” 因为我是要把文件简单提交到…...

元宇宙之应用(04)沉浸式游戏

在数字科技迅猛发展的今天&#xff0c;元宇宙的概念正逐渐从科幻走向现实&#xff0c;重新定义了人们与虚拟世界的交互方式。在这一概念的引领下&#xff0c;"沉浸式游戏" 蓬勃发展&#xff0c;为游戏体验带来了前所未有的深度和广度。那么&#xff0c;为什么沉浸式游…...

浙大数据结构第八周之08-图7 公路村村通

题目详情&#xff1a; 现有村落间道路的统计数据表中&#xff0c;列出了有可能建设成标准公路的若干条道路的成本&#xff0c;求使每个村落都有公路连通所需要的最低成本。 输入格式: 输入数据包括城镇数目正整数N&#xff08;≤1000&#xff09;和候选道路数目M&#xff08…...