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

第十六届蓝桥杯 省赛C/C++ 大学B组

编程题目现在在洛谷上都可以提交了。
未完待续,写不动了。

C++11 编译命令

g++ A.cpp -o A -Wall -lm -std=c++11

A. 移动距离

本题总分:5 分

问题描述

小明初始在二维平面的原点,他想前往坐标 ( 233 , 666 ) (233, 666) (233,666)。在移动过程中,他只能采用以下两种移动方式,并且这两种移动方式可以交替、不限次数地使用:

  1. 水平向右移动,即沿着 x 轴正方向移动一定的距离。
  2. 沿着一个圆心在原点 ( 0 , 0 ) (0, 0) (0,0)、以他当前位置到原点的距离为半径的圆的圆周移动,移动方向不限(即顺时针或逆时针移动不限)。在这种条件下,他到达目的地最少移动多少单位距离?你只需要输出答案四舍五入到整数的结果。

思路

最短路径应该是往右走圆的半径长度 r = 23 3 2 + 66 6 2 r = \sqrt{233^2 + 666^2} r=2332+6662 ,然后再延着圆弧走到 ( 233 , 666 ) (233, 666) (233,666) 这个点。圆弧长度: l = α r = arctan ⁡ 666 233 r l = \alpha r = \arctan{\frac{666}{233}}r l=αr=arctan233666r ( α \alpha α 是圆弧对应的圆心角,以弧度制表示)。答案是 1576 1576 1576

代码

#include <bits/stdc++.h>
using namespace std;int main() {double r = sqrt(233 * 233 + 666 * 666);double ang = atan(1.0 * 666 / 233);cout << (int)round(ang * r + r) << endl;return 0;
}

B. 客流量上限

本题总分:5 分

问题描述

一家连锁旅馆在全国拥有 2025 2025 2025 个分店,分别编号为 1 1 1 2025 2025 2025。随着节日临近,总部决定为每家分店设定每日客流量的上限,分别记作 A 1 A_1 A1, A 2 A2 A2, … \ldots , A 2025 A_{2025} A2025。这些上限并非随意分配,而是需要满足以下约束条件:

  1. A 1 A_1 A1, A 2 A2 A2, … \ldots , A 2025 A_{2025} A2025 必须是 1 1 1 2025 2025 2025 的一个排列,即每个 A i A_i Ai 均是 1 1 1 2025 2025 2025 之间的整数,且所有 Ai 互不相同。
  2. 对于任意分店 i i i j j j 1 ≤ i , j ≤ 2025 1 ≤ i, j ≤ 2025 1i,j2025 i i i 可等于 j j j),它们的客流量上限 A i A_i Ai A j A_j Aj 的乘积不得超过 i × j + 2025 i \times j + 2025 i×j+2025。这些约束旨在平衡各分店客流压力,确保服务质量和运营稳定性。现在,请你计算这样的分配方案究竟有多少种。由于答案可能很大,你只\需输出其对 1 0 9 + 7 10^9 + 7 109+7 取余后的结果即可。

思路

暂无

C. 可分解的正整数

时间限制: 1.0s
内存限制: 256.0MB
本题总分:10 分

问题描述

定义一种特殊的整数序列,这种序列由 连续递增的整数 组成,并满足以下条件:

  1. 序列长度至少为 3 3 3
  2. 序列中的数字是连续递增的整数(即相邻元素之差为 1 1 1),可以包括正整数、负整数或 0 0 0

例如, [ 1 , 2 , 3 ] [1, 2, 3] [1,2,3] [ 4 , 5 , 6 , 7 ] [4, 5, 6, 7] [4,5,6,7] [ − 1 , 0 , 1 ] [−1, 0, 1] [1,0,1] 是符合条件的序列,而 [ 1 , 2 ] [1, 2] [1,2](长度不足)和 [ 1 , 2 , 4 ] [1, 2, 4] [1,2,4](不连续)不符合要求。

现给定一组包含 N N N 个正整数的数据 A 1 A_1 A1, A 2 A_2 A2, … \ldots , A N A_N AN。如果某个 A i A_i Ai 能够表示为符合上述条件的连续整数序列中所有元素的和,则称 A i A_i Ai 是可分解的。

请你统计这组数据中可分解的正整数的数量。

输入格式

输入的第一行包含一个正整数 N N N,表示数据的个数。

第二行包含 N N N 个正整数 A 1 A_1 A1, A 2 A_2 A2, … \ldots , A N A_N AN,表示需要判断是否可分解的正整数序列。

输出格式

输出一个整数,表示给定数据中可分解的正整数的数量。

样例输入

3
3 6 15

样例输出

3

样例说明

A i = 3 A_i = 3 Ai=3 是可分解的,因为 [ 0 , 1 , 2 ] [0, 1, 2] [0,1,2] 的和为 0 + 1 + 2 = 3 0 + 1 + 2 = 3 0+1+2=3
A i = 6 A_i = 6 Ai=6 是可分解的,因为 [ 1 , 2 , 3 ] [1, 2, 3] [1,2,3] 的和为 1 + 2 + 3 = 6 1 + 2 + 3 = 6 1+2+3=6
A i = 15 A_i = 15 Ai=15 是可分解的,因为 [ 4 , 5 , 6 ] [4, 5, 6] [4,5,6] 的和为 4 + 5 + 6 = 15 4 + 5 + 6 = 15 4+5+6=15
所以可分解的正整数的数量为 3 3 3

评测用例规模与约定

对于 30 % 30\% 30% 的评测用例, 1 ≤ N ≤ 100 1 \le N \le 100 1N100 1 ≤ A i ≤ 100 1 \le A_i \le 100 1Ai100
对于 100 % 100\% 100% 的评测用例, 1 ≤ N ≤ 1 0 5 1 \le N \le 10^5 1N105 1 ≤ A i ≤ 1 0 9 1 \le A_i \le 10^9 1Ai109

思路

[ 1 , 1 0 9 ] [1, 10^9] [1,109] 的正整数里面, 1 1 1 无法被连续整数序列表示,剩余所有的数都可以被以 1 1 1 0 0 0 1 1 1 为中心的连续整数序列表示。例如,

  • 2 2 2 可以被表示为 − 1 -1 1, 0 0 0, 1 1 1, 2 2 2
  • 3 3 3 可以被表示为 0 0 0, 1 1 1, 2 2 2
  • 4 4 4 可以被表示为 − 3 -3 3, − 2 -2 2, − 1 -1 1, 0 0 0, 1 1 1, 2 2 2, 3 3 3, 4 4 4

代码

#include <bits/stdc++.h>
using namespace std;int n, a, ans = 0;int main() {ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);cin >> n;for (int i = 1; i <= n; i++)cin >> a, ans += (a > 1);cout << ans << endl;return 0;
}

D. 产值调整

时间限制: 1.0s
内存限制: 256.0MB
本题总分:10 分

问题描述

偏远的小镇上,三兄弟共同经营着一家小型矿业公司 “兄弟矿业”。公司旗下有三座矿山:金矿、银矿和铜矿,它们的初始产值分别用非负整数 A A A B B B C C C 表示。这些矿山的产出是小镇经济的核心,支撑着三兄弟和许多矿工家庭的生计。

然而,各矿山的产值波动剧烈,有时金矿收益高而银矿、铜矿低迷,有时则相反。这种不稳定性让公司收入难以预测,也常引发兄弟间的争执。为了稳定经营,三兄弟设计了一个公平的产值调整策略,每年执行一次,每次调整时,将根据当前的产值 A A A B B B C C C,计算新产值:

  1. 金矿新产值 A A A = ⌊ B + C 2 ⌋ = \left \lfloor\frac{B + C}{2} \right\rfloor =2B+C
  2. 银矿新产值 B B B = ⌊ A + C 2 ⌋ = \left \lfloor\frac{A + C}{2} \right\rfloor =2A+C
  3. 铜矿新产值 C C C = ⌊ A + B 2 ⌋ = \left \lfloor\frac{A + B}{2} \right\rfloor =2A+B

其中, ⌊ ⌋ \lfloor\rfloor 表示向下取整。例如, ⌊ 3.7 ⌋ = 3 \lfloor3.7\rfloor = 3 3.7=3 ⌊ 5.2 ⌋ = 5 \lfloor5.2\rfloor = 5 5.2=5

计算出 A A A′、 B B B′、 C C C′ 后,同时更新: A A A 变为 A A A′, B B B 变为 B B B′, C C C 变为 C C C′,作
为下一年调整的基础。

三兄弟认为这个方法能平衡产值波动,于是计划连续执行 K K K 次调整。现在,请你帮他们计算,经过 K K K 次调整后,金矿、银矿和铜矿的产值分别是多少。

输入格式

输入的第一行包含一个整数 T T T ,表示测试用例的数量。

接下来的 T T T 行,每行包含四个整数 A A A B B B C C C K K K,分别表示金矿、银矿和铜矿的初始产值,以及需要执行的调整次数。

输出格式

对于每个测试用例,输出一行,包含三个整数,表示经过 K K K 次调整后金矿、银矿和铜矿的产值,用空格分隔。

样例输入

2
10 20 30 1
5 5 5 3

样例输出

25 20 15
5 5 5

评测用例规模与约定

对于 30 % 30\% 30% 的评测用例, 1 ≤ T ≤ 100 1 \le T \le 100 1T100 1 ≤ A , B , C , K ≤ 1 0 5 1 \le A, B,C, K \le 10^5 1A,B,C,K105
对于 100 % 100\% 100% 的评测用例, 1 ≤ T ≤ 1 0 5 1 \le T \le 10^5 1T105 1 ≤ A , B , C , K ≤ 1 0 9 1 \le A, B,C, K \le 10^9 1A,B,C,K109

思路

三个数会迅速向某个数收敛,当三个数都一样时,无论进行多少次操作,结果都不会变了。在三个数都变成一样之前暴力求解。

代码

#include <bits/stdc++.h>
using namespace std;void solve() {int a, b, c, k;cin >> a >> b >> c >> k;while (k--) {int aa = (b + c) / 2, bb = (a + c) / 2, cc = (a + b) / 2;a = aa, b = bb, c = cc;if (a == b && b == c) break;}cout << a << " " << b << " " << c << "\n";
}int main() {ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);int T;cin >> T;while (T--) solve();return 0;
}

E. 画展布置

时间限制: 1.0s
内存限制: 256.0MB
本题总分:15 分

问题描述

画展策展人小蓝和助理小桥为即将举办的画展准备了 N N N 幅画作,其艺术价值分别为 A 1 A_1 A1, A 2 A_2 A2, … \ldots , A N A_N AN。他们需要从这 N N N 幅画中挑选 M M M 幅,并按照一定顺序布置在展厅的 M M M 个位置上。如果随意挑选和排列,艺术价值的变化可能会过于突兀,导致观众的观展体验不够流畅。

为了优化布置,他们查阅了《画展布置指南》。指南指出,理想的画展应使观众在欣赏画作时,艺术价值的过渡尽量平缓。指南建议,选择并排列 M M M 幅画,应使艺术价值的变化程度通过一个数值 L L L 来衡量,且该值越小越好。数值 L L L 的定义为:

L = ∑ i = 1 M − 1 ∣ B i 2 − B i + 1 2 ∣ L = \sum_{i = 1}^{M - 1}|B_i^2 - B_{i + 1}^2| L=i=1M1Bi2Bi+12

其中 B i B_i Bi 表示展厅第 i i i 个位置上画作的艺术价值。

现在,他们希望通过精心挑选和排列这 M M M 幅画作,使 L L L 达到最小值,以提升画展的整体协调性。请你帮他们计算出这个最小值是多少。

输入格式

输入共两行。

第一行包含两个正整数 N N N M M M,分别表示画作的总数和需要挑选的画作数量。

第二行包含 N N N 个正整数 A 1 A_1 A1, A 2 A_2 A2, … \ldots , A N A_N AN,表示每幅画作的艺术价值。

输入样例

4 2
1 5 2 4

输出样例

3

样例用例规模与约定

对于 40 % 40\% 40% 的评测用例, 2 ≤ M ≤ N ≤ 1 0 3 2 \le M \le N \le 10^3 2MN103 1 ≤ A i ≤ 1 0 3 1 \le A_i \le 10^3 1Ai103
对于 100 % 100\% 100% 的评测用例, 2 ≤ M ≤ N ≤ 1 0 5 2 \le M \le N \le 10^5 2MN105 1 ≤ A i ≤ 1 0 5 1 \le A_i \le 10^5 1Ai105

输出格式

输出一个整数,表示 L L L 的最小值。

思路

  • 对于选定的若干个数,一定按照大小排序一定最优。
    • 对于 i < j i < j i<j,如果交换 B i B_i Bi B j B_j Bj,即 B i ′ = B j B'_i = B_j Bi=Bj B j ′ = B i B'_j =B_i Bj=Bi,一定会有 ∣ B i 2 − B i − 1 2 ∣ + ∣ B i 2 − B i + 1 2 ∣ + ∣ B j 2 − B j − 1 2 ∣ + ∣ B j 2 − B j + 1 2 ∣ < ∣ B i ′ 2 − B i − 1 ′ 2 ∣ + ∣ B i ′ 2 − B i + 1 ′ 2 ∣ + ∣ B j ′ 2 − B j − 1 ′ 2 ∣ + ∣ B j ′ 2 − B j + 1 ′ 2 ∣ |B_i^2 - B_{i - 1}^2| + |B_i^2 - B_{i + 1}^2| + |B_j^2 - B_{j - 1}^2| + |B_j^2 - B_{j + 1}^2| < |B'^2_i - B'^2_{i - 1}| + |B'^2_i - B'^2_{i + 1}| + |B'^2_j - B'^2_{j - 1}| + |B'^2_j - B'^2_{j + 1}| Bi2Bi12+Bi2Bi+12+Bj2Bj12+Bj2Bj+12<Bi2Bi12+Bi2Bi+12+Bj2Bj12+Bj2Bj+12,即交换之后结果更劣。
  • 不妨设选定数字从小到大排序,那么 L = ∑ i = 1 M − 1 ∣ B i 2 − B i + 1 2 ∣ = ∑ i = 1 M − 1 ( B i + 1 2 − B i 2 ) = B M 2 − B 1 2 L = \sum_{i = 1}^{M - 1}|B_i^2 - B_{i + 1}^2| = \sum_{i = 1}^{M - 1}(B_{i + 1}^2 - B_i^2) = B_M^2 - B_1^2 L=i=1M1Bi2Bi+12=i=1M1(Bi+12Bi2)=BM2B12,所以我们要让所选的数最大值与最小值的差尽可能地小。
  • 只需要先将 A A A 数组排序,然后依次选择连续的 M M M 个数,算出最小的 L L L 即可。

代码

#include <bits/stdc++.h>
using namespace std;#define int long longconst int N = 1e5 + 10;
int n, m, a[N], sum[N], ans = LLONG_MAX;signed main() {cin >> n >> m;for (int i = 1; i <= n; i++) cin >> a[i];sort(a + 1, a + n + 1);for (int i = 2; i <= n; i++)sum[i] = sum[i - 1] + a[i] * a[i] - a[i - 1] * a[i - 1];for (int l = 1; l + m - 1 <= n; l++) {int r = l + m - 1;ans = min(ans, sum[r] - sum[l]);}cout << ans << endl;return 0;
}

F. 水质检测

时间限制: 1.0s
内存限制: 256.0MB
本题总分:15 分

问题描述

小明需要在一条 2 × n 2 \times n 2×n 的河床上铺设水质检测器。在他铺设之前,河床上已经存在一些检测器。如果两个检测器上下或者左右相邻,那么这两个检测器就是互相连通的。连通具有传递性,即如果 A A A B B B 连通, B B B C C C 连通,那么 A A A C C C 也连通。现在他需要在河床上增加铺设一些检测器使得所有的检测器都互相连通。他想知道最少需要增加铺设多少个检测器?

输入格式

输入共两行,表示一个 2 × n 2 \times n 2×n 的河床。

每行一个长度为 n n n 的字符串,仅包含 #.,其中 # 表示已经存在的检测器,. 表示空白。

输出格式

输出共 1 1 1 行,一个整数表示答案。

样例输入

.##.....#
.#.#.#...

样例输出

5

说明/提示

样例说明

其中一种方案:

.###....#
.#.######

增加了 5 个检测器。

评测用例规模与约定

对于 100 % 100\% 100% 的评测用例,保证 n ≤ 1000000 n \leq 1000000 n1000000

H. 装修报价

题目描述

老王计划装修房子,于是联系了一家装修公司。该公司有一套自动报价系统,只需用户提供 N N N 项装修相关费用 A 1 , A 2 , … , A N A_1, A_2, \dots , A_N A1,A2,,AN,系统便会根据这些费用生成最终的报价。

然而,当老王提交数据后,他发现这套系统的运作方式并不透明:系统只会给出一个最终报价,而不会公开任何运算过程或中间步骤。

公司对此解释称,这套系统会依据某种内部算法,在每对相邻数字之间插入 + + +(加法)、 − - (减法)或 ⊕ \oplus (异或)运算符,并按照特定优先级规则计算结果:异或运算优先级最高,其次是加减。但由于保密性,具体的运算符组合以及中间过程都不会对外公开。

为了验证系统报价是否合理,老王决定模拟其运作方式,尝试每种可能的运算符组合,计算出所有可能出现的结果的总和。如果最终报价明显超出这个范围,他就有理由怀疑系统存在异常或误差。只是老王年事已高,手动计算颇为吃力,便向你求助。

现在,请你帮老王算出所有可能的结果的总和。由于该总和可能很大,你只需提供其对 1 0 9 + 7 10^9+7 109+7 取余后的结果即可。

输入格式

第一行输入一个整数 N N N,表示装修相关费用的项数。

第二行输入 N N N 个非负整数 A 1 , A 2 , … , A N A_1, A_2, \dots , A_N A1,A2,,AN,表示各项费用。

输出格式

输出一个整数,表示所有可能的总和对 1 0 9 + 7 10^9 + 7 109+7 取余后的结果。

样例输入

3
0 2 5

样例输出

11

说明/提示

对于输入样例中的三个数 A = [ 0 , 2 , 5 ] A = [0, 2, 5] A=[0,2,5],所有可能的运算符组合共有 9 9 9 种。计算结果如下:

0 ⊕ 2 ⊕ 5 = 7 0 \oplus 2 \oplus 5 = 7 025=7
0 ⊕ 2 + 5 = 7 0 \oplus 2 + 5 = 7 02+5=7
0 ⊕ 2 − 5 = − 3 0 \oplus 2 - 5 = -3 025=3
0 + 2 ⊕ 5 = 7 0 + 2 \oplus 5 = 7 0+25=7
0 + 2 + 5 = 7 0 + 2 + 5 = 7 0+2+5=7
0 + 2 − 5 = − 3 0 + 2 - 5 = -3 0+25=3
0 − 2 ⊕ 5 = − 7 0 - 2 \oplus 5 = -7 025=7
0 − 2 + 5 = 3 0 - 2 + 5 = 3 02+5=3
0 − 2 − 5 = − 7 0 - 2 - 5 = -7 025=7

所有结果的总和为:

7 + 7 + ( − 3 ) + 7 + 7 + ( − 3 ) + ( − 7 ) + 3 + ( − 7 ) = 11 7 + 7 + (-3) + 7 + 7 + (-3) + (-7) + 3 + (-7) = 11 7+7+(3)+7+7+(3)+(7)+3+(7)=11

11 11 11 1 0 9 + 7 10^9 + 7 109+7 取余后的值依然为 11 11 11,因此,输出结果为 11 11 11

评测用例规模与约定

  • 对于 30 % 30\% 30% 的评测用例, 1 ≤ N ≤ 13 1 \leq N \leq 13 1N13 0 ≤ A i ≤ 1 0 3 0 \leq A_i \leq 10^3 0Ai103
  • 对于 60 % 60\% 60% 的评测用例, 1 ≤ N ≤ 1 0 3 1 \leq N \leq 10^3 1N103 0 ≤ A i ≤ 1 0 5 0 \leq A_i \leq 10^5 0Ai105
  • 对于 100 % 100\% 100% 的评测用例, 1 ≤ N ≤ 1 0 5 1 \leq N \leq 10^5 1N105 0 ≤ A i ≤ 1 0 9 0 \leq A_i \leq 10^9 0Ai109

思路

  • 每一种组合真正对答案有贡献的是一段异或的前缀,如果设计加减的运算会相互抵消,比如 0 ⊕ 2 − 3 0 \oplus 2 - 3 023,一定会存在一个 0 ⊕ 2 + 3 0 \oplus 2 + 3 02+3,后面的加 + 3 +3 +3 − 3 -3 3 就抵消掉了。
  • 异或前缀 i i i 对答案贡献的数量是 2 × 3 n − i − 1 2 \times 3^{n - i - 1} 2×3ni1

代码

#include <bits/stdc++.h>
using namespace std;#define int long longconst int N = 1e5 + 10, mod = 1e9 + 7;
int n, a[N], pre[N], pw3[N];signed main() {ios::sync_with_stdio(false); cin.tie(nullptr);cin >> n;pw3[0] = 1;for (int i = 1; i <= n; i++) {cin >> a[i];pw3[i] = pw3[i - 1] * 3 % mod;pre[i] = pre[i - 1] ^ a[i];}int ans = 0;for (int i = 1; i < n; i++) {ans = (ans + (pre[i] * 2 % mod) * pw3[n - i - 1] % mod) % mod;}ans = (ans + pre[n]) % mod;cout << ans << endl;return 0;
}

快读模板

inline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') {if (c == '-') f = -1;c = getchar();}while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
}

如果题目中有的变量需要用 long long 的话,可以直接在宏里面把 int 扩展到 long long,这样比较方便(如下图)。

#include <bits/stdc++.h>
using namespace std;#define int long longinline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') {if (c == '-') f = -1;c = getchar();}while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
}// 代码signed main() {// 代码return 0;
}

对拍代码

整个对拍需要以下文件。bf.cpp文件里是暴力代码,std.cpp文件里是用了算法的代码,data.cpp用来生成输入样例,pai.cpp用来比较bf.cpp和stdcpp.out的结果是否相同。

注意:每次更改bf.cpp,std.cpp或data.cpp之后都需要重新编译之后再运行pai.cpp进行对拍。

接下来以输出 a + b 的程序来说明。

img1

bf.cpp

#include <bits/stdc++.h>
using namespace std;int main() {int a, b, oup = 0;cin >> a >> b;for (int i = 1; i <= a; i++) oup++;for (int i = 1; i <= b; i++) oup++;cout << oup;return 0;
}

std.cpp

#include <bits/stdc++.h>
using namespace std;int main() {int a, b;cin >> a >> b;if (a > 0) cout << a << endl;cout << a + b << endl;return 0;
}

data.cpp

#include <bits/stdc++.h>
using namespace std;mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());int rand(int l, int r) {return uniform_int_distribution<int>(l, r)(rng);
}int main() {srand(time(0));int a = rand(1, 100000000), b = rand(1, 100000000); // 随机生成两个数字cout << a << ' ' << b << endl; // 按照格式输出return 0;
}

pai.cpp

可以不用自己创建txt文件,编译运行一次 pai.cpp 之后会自动生成相应 txt 文件。

#include <bits/stdc++.h>
using namespace std;int main() {int t = 1;while (1) {printf("test%d: ", t++);system("data.exe > in.txt"); // 用 data.exe 生成输入样例,并存入 in.txt 文件中system("std.exe < in.txt > stdout.txt");// 将 in.txt 文件中的输入样例用来测试 std.cpp 中的代码,并将结果输出到 stdout.txt 文件中system("bf.exe < in.txt > bfout.txt");// 将 in.txt 文件中的输入样例用来测试 bf.cpp 中的代码,并将结果输出到 bf.out 文件中// 比较 stdout.txt 和 bfout.txt 文件是否一样,一样返回 false,不一样返回 trueif (system("fc stdout.txt bfout.txt")) return 0;}
}

下图是 pai.cpp 运行后的输出结果,会显示 WA 和输出不一样的地方。

img2
如果输出样例一样的话,会一直显示找不到差异。

在这里插入图片描述
这个时候接着写下一道题就好了,让它在后台接着运行,有可能后面会出现不一样的地方。

相关文章:

第十六届蓝桥杯 省赛C/C++ 大学B组

编程题目现在在洛谷上都可以提交了。 未完待续&#xff0c;写不动了。 C11 编译命令 g A.cpp -o A -Wall -lm -stdc11A. 移动距离 本题总分&#xff1a;5 分 问题描述 小明初始在二维平面的原点&#xff0c;他想前往坐标 ( 233 , 666 ) (233, 666) (233,666)。在移动过程…...

SpringBoot3.0 +GraalVM21 + Docker 打包成可执行文件

SpringBoot3.0 GraalVM21 Docker 打包成可执行文件 前言 随着时代的飞速发展&#xff0c;JDK 17 及以上版本开始支持通过 GraalVM 将运行在 JVM 上的 jar 包直接打包成可在操作系统上运行的原生可执行文件。这一特性能使开发者在某些场景下更加灵活地部署 Java 程序。 在云原…...

从编程范式看 “万物皆智能,万事皆自动” 愿景

从编程范式看“万物皆智能,万事皆自动”愿景 引言 在信息技术飞速发展的今天,“万物皆智能,万事皆自动”成为了众多 IT 从业者和科技爱好者心中的终极愿景。这一愿景描绘了一个所有事物都具备智能、所有事情都能自动完成的美好未来。而在实现这一愿景的征程中,面向对象编…...

Vue 项目中 package.json 文件的深度解析

Vue 项目中 package.json 文件的深度解析 在 Vue 项目中&#xff0c;package.json 文件是项目配置的核心&#xff0c;它管理着项目的依赖关系、脚本命令、版本信息等重要内容。正确理解和配置 package.json 文件&#xff0c;对于项目的开发、构建、测试和部署都至关重要。本文…...

解决2080Ti使用节点ComfyUI-PuLID-Flux-Enhanced中遇到的问题

使用蓝大的工作流《一键同时换头、换脸、发型、发色之双pulid技巧》 刚开始遇到的是不支持bf16的错误 根据《bf16 is only supported on A100 GPUs #33》中提到&#xff0c;修改pulidflux.py中的dtype 为 dtype torch.float16 后&#xff0c;出现新的错误&#xff0c;这个…...

1 程序的本质,计算机语言简史,TIOBE 指数,C 语言的独特魅力、发展历程、发行版本和应用场景

&#x1f44b; 嘿&#xff0c;各位编程探险家们&#xff01;是不是一提到 C 语言&#xff0c;脑海中就浮现出指针乱舞、内存泄漏的恐怖画面&#xff1f;别怕&#xff0c;你并不孤单&#xff01;&#x1f605; 今天&#xff0c;你踏入了这个专为 “C 语言恐惧症” 患者打造的避…...

python格式化字符串漏洞

什么是python格式化字符串漏洞 python中&#xff0c;存在几种格式化字符串的方式&#xff0c;然而当我们使用的方式不正确的时候&#xff0c;即格式化的字符串能够被我们控制时&#xff0c;就会导致一些严重的问题&#xff0c;比如获取敏感信息 python常见的格式化字符串 百…...

撰写学位论文Word图表目录的自动生成

第一步&#xff1a;为图片和表格添加题注 选中图片或表格 右键点击需要编号的图片或表格&#xff0c;选择 【插入题注】&#xff08;或通过菜单栏 引用 → 插入题注&#xff09;。 设置题注标签 在弹窗中选择 标签&#xff08;如默认有“图”“表”&#xff0c;若无需自定义标…...

SDC命令详解:使用相对路径访问设计对象(current_instance命令)

相关阅读 SDC命令详解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm1001.2014.3001.5482 在使用get_cells等命令访问设计对象时&#xff0c;需要指定设计对象的名字&#xff0c;这个名字是一个相对路径&#xff0c;本文就将对此进行讨论。 相对路径 使…...

vector的应用

在平常使用c是&#xff0c;只使用普通数组肯定不够便捷&#xff0c;这时&#xff0c;我们就可以使用vector来使代码更加简洁 目录 1.vector的定义 2.在vector末尾增加一个元素 3.输出元素 &#xff08;1&#xff09;输出单个元素 &#xff08;2&#xff09;循环输出元素 4…...

pytorch查询字典、列表维度

输出tensor变量维度 print(a.shape)输出字典维度 for key, value in output_dict.items():if isinstance(value, torch.Tensor):print(f"{key} shape:", value.shape)输出列表维度 def get_list_dimensions(lst):# 基线条件&#xff1a;如果lst不是列表&#xff0…...

征程 6 VIO Frame 时间戳介绍

1. 时间类型 征程 6 内部的时间类型如下 Linux 系统时间是基于 arm system counter 抽象的&#xff0c;Linux 的基于 arm system counter 抽象了很多种时间&#xff0c;图中画了两种。CLOCK_MONOTONIC_RAW 是不会被时间同步调整的。 2. Frame 时间戳 从 VIO 侧获取的图像数…...

DotnetCore开源库SampleAdmin源码编译

1.报错: System.Net.Sockets.SocketException HResult0x80004005 Message由于目标计算机积极拒绝&#xff0c;无法连接。 SourceSystem.Net.Sockets StackTrace: 在 System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, C…...

QML之ScrollView(滚动视图)

ScrollView 是 Qt Quick Controls 2 中提供的可滚动视图容器&#xff0c;用于创建可滚动区域。以下是详细使用方法&#xff1a; 基本用法 qml import QtQuick 2.15 import QtQuick.Controls 2.15ScrollView {id: scrollViewwidth: 300height: 200clip: true// 背景设置&…...

FreeRTOS使任务处于就绪状态的API

在FreeRTOS中,任务的**就绪状态(Ready State)**意味着任务已准备好运行,但尚未被调度器分配CPU时间。以下是通过API使任务进入就绪状态的常见方法及其分类: 1. 恢复被挂起的任务 vTaskResume(TaskHandle_t xTaskToResume) 将被挂起(Suspended)的任务恢复为就绪状态。 示…...

第四篇:Python文件操作与异常处理

第一章&#xff1a;文件操作基础与核心原理 1.1 文件系统基础 文件系统是操作系统用于管理存储设备中数据的核心机制。Python通过内置的open()函数实现文件操作&#xff0c;支持文本文件&#xff08;.txt、.csv&#xff09;和二进制文件&#xff08;.jpg、.dat&#xff09;的…...

蓝桥杯 嵌入式 小结

一、BSP模版 1. Key 按键扫描模版&#xff0c;需要注意的是 key_val 。 uint8_t Key_Scan(void) {uint8_t key_val0;if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_0)GPIO_PIN_RESET){key_val1;}if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_1)GPIO_PIN_RESET){key_val2;}if(HAL_GPIO_ReadPin(…...

【音视频】SDL渲染YUV格式像素

SDL视频显示的流程 实现流程 准备视频文件 准备一个格式为yuv420p&#xff0c;分辨率为320x240的yuv数据&#xff0c;并且将视频文件放入项目构建的目录下&#xff1a; 初始化SDL 初始化SDL的视频模块 //初始化 SDL if(SDL_Init(SDL_INIT_VIDEO)) {fprintf( stderr, "…...

ThingsBoard3.9.1 MQTT Topic(1)

1.网关转发子设备的遥测信息, Topic:v1/gateway/telemetry { "m1": [{ "mode": "CW", "temperature": 23 }], "m2": [{ "mode": "CW", "temperature": 23 }] } 说明&#xff1a;json格式&a…...

如何查看自己抖音的IP属地?详细教程+常见问题解答

在当今互联网时代&#xff0c;IP属地信息已成为各大社交平台&#xff08;如抖音、微博、快手等&#xff09;展示用户真实网络位置的重要功能。无论是出于隐私保护、账号安全&#xff0c;还是单纯好奇自己的IP归属地&#xff0c;了解如何查看抖音IP属地都很有必要。 本文将详细介…...

李宏毅NLP-2-语音识别part1

语音识别part1 这是一篇名为 “Speech Recognition is Difficult?”&#xff08;语音识别很难吗&#xff1f; &#xff09;的文章。作者是 J.R. Pierce&#xff0c;来自贝尔电话实验室&#xff08;Bell Telephone Laboratories, Inc.&#xff09; 。文中提到语音识别虽有吸引力…...

AUTOSAR图解==>AUTOSAR_SWS_MemoryMapping

AUTOSAR 内存映射机制详解 深入解析AUTOSAR标准中的内存映射技术 目录 AUTOSAR 内存映射机制详解 目录1. 概述2. 内存映射架构 2.1 架构组成2.2 映射类型2.3 关键组件3. 配置数据模型 3.1 主要配置容器3.2 内存段类型3.3 初始化策略4. 映射使用流程 4.1 配置阶段4.2 开发阶段...

探索 HTML5 新特性:提升网页开发的现代体验

在 Web 开发的演进历程中&#xff0c;HTML5 无疑是一座重要的里程碑。它不仅为网页带来了更丰富的功能&#xff0c;还提升了开发效率与用户体验。本文将深入探讨 HTML5 那些令人瞩目的新特性&#xff0c;助你紧跟现代 Web 开发潮流。 一、语义化标签&#xff1a;让结构更清晰 …...

系统设计思维的讨论

我们经常说自己熟悉了spring&#xff0c;能够搭建起一个项目基本框架&#xff0c;并且在此之上进行开发&#xff0c;用户or客户提出需求碰到不会的百度找找就可以实现。干个四五年下一份工作就去面试架构师了&#xff0c;运气好一些可能在中小公司真的找到一份架构师、技术负责…...

【音视频】SDL播放PCM音频

相关API 打开音频设备 int SDLCALL SDL_OpenAudio(SDL_AudioSpec * desired, SDL_AudioSpec * obtained); desired&#xff1a;期望的参数。obtained&#xff1a;实际音频设备的参数&#xff0c;一般情况下设置为NULL即可。 SDL_AudioSpec typedef struct SDL_AudioSpec { i…...

FATFS文件系统配置

1、FatFs模块功能配置选项参考ffconf.h函数配置链接&#xff1a;FatFs模块功能配置选项 2、FATFS配置 FATFS 支持长文件名链接: FATFS&#xff1a;配置 FATFS 支持长文件名 3、 FATFS移植链接1 4、 FATFS移植链接2 5、FAT32 和 FATFS 是两个不同层次的概念&#xff0c;分别属于…...

JVM 字节码是如何存储信息的?

JVM 字节码是 Java 虚拟机 (JVM) 执行的指令集&#xff0c;它是一种与平台无关的二进制格式&#xff0c;在任何支持 JVM 的平台上都可运行的Java 程序。 字节码存储信息的方式&#xff0c;主要通过以下几个关键组成部分和机制来实现&#xff1a; 1. 指令 (Opcodes) 和 操作数 …...

Linux:多路转接(上)——select

目录 一、select接口 1.认识select系统调用 2.对各个参数的认识 二、编写select服务器 一、select接口 1.认识select系统调用 int select(int nfds, fd_set readfds, fd_set writefds, fd_set exceptfds, struct timeval* timeout); 头文件&#xff1a;sys/time.h、sys/ty…...

如何解决DDoS攻击问题 ?—专业解决方案深度分析

本文深入解析DDoS攻击面临的挑战与解决策略&#xff0c;提供了一系列防御技术和实践建议&#xff0c;帮助企业加强其网络安全架构&#xff0c;有效防御DDoS攻击。从攻击的识别、防范措施到应急响应&#xff0c;为网络安全工作者提供了详细的操作指引。 DDoS攻击概览&#xff1a…...

机器学习Python实战-第三章-分类问题-3.决策树算法

目录 3.3.1 原理简介 3.3.2 算法步骤 3.3.3 实战 3.3.4 实验 前半部分是理论介绍&#xff0c;后半部分是代码实践&#xff0c;可以选择性阅读。 决策树&#xff08;decision tree&#xff09;是功能强大而且相当受欢迎的分类和预估方法&…...

Spring三级缓存学习

Spring的三级缓存机制主要用于解决单例Bean的循环依赖问题。其核心在于提前暴露Bean的引用&#xff0c;允许未完全初始化的对象被其他Bean引用。以下是三级缓存的详细说明及其解决循环依赖的原理&#xff1a; 三级缓存结构 一级缓存&#xff08;singletonObjects&#xff09; 存…...

欧拉函数φ

函数作用 计算 1 1 1 ~ n n n中有多少个与 n n n互质的数。 函数公式 φ ( n ) n p 1 − 1 p 1 p 2 − 1 p 2 … … p m − 1 p m φ(n)n\times\frac{p_1-1}{p_1}\times\frac{p_2-1}{p_2}\times……\times\frac{p_m-1}{p_m} φ(n)np1​p1​−1​p2​p2​−1​……pm​p…...

蓝桥杯刷题指南

蓝桥杯是中国普及性最好的计算机程序设计竞赛之一&#xff0c;参加者包括大学生、高中生和草根程序员等各个群体。通过刷题来提升自己的编程能力是参加蓝桥杯比赛的常见做法。下面是一些蓝桥杯常见的题型和刷题技巧&#xff0c;希望对大家有所帮助。 基础入门题目&#xff1a;…...

ctfshow WEB web12

发现只有这样一句话&#xff0c;应该是要看页面源代码的&#xff0c;右键查看页面源代码 发现可能存在代码执行漏洞&#xff0c;拼接一个?cmdphpinfo(); 成功显示出php信息, 说明存在代码执行漏洞 接下来遍历目录&#xff0c;我们要用到一个函数 glob() glob() 函数可以查找…...

ChromeOS 135 版本更新

ChromeOS 135 版本更新 一、ChromeOS 135 更新内容 1. ChromeOS 电池寿命优化策略 为了延长 Chromebook 的使用寿命&#xff0c;ChromeOS 135 引入了一项全新的电池充电限制策略 —— DevicePowerBatteryChargingOptimization&#xff0c;可提供更多充电优化选项&#xff0c…...

redis的缓存

redis的缓存 一.缓存简介1.缓存2.redis作为数据库&#xff08;MySQL&#xff09;缓存的原因 二.缓存更新策略1.定期生成2.实时生成3.内存淘汰策略1&#xff09;FIFO(First In First Out) 先进先出2&#xff09;LRU(Least Recently Used)淘汰最久未使用的3&#xff09;LFU(Least…...

字符串与相应函数(上)

字符串处理函数分类 求字符串长度&#xff1a;strlen长度不受限制的字符串函数&#xff1a;strcpy,strcat,strcmp长度受限制的字符串函数:strncpy,strncat,strncmp字符串查找&#xff1a;strstr,strtok错误信息报告&#xff1a;strerror字符操作&#xff0c;内存操作函数&…...

【微知】Mellanox网卡网线插入后驱动的几个日志?(Cable plugged;IPv6 ... link becomes ready)

概要 本文是一个简单的信息记录。记录的是当服务器网卡的光模块插入后内核的日志打印。通过这种日志打印&#xff0c;可以在定位分析问题的时候&#xff0c;知道进行过一次模块插拔。 日志 截图版&#xff1a; 文字版&#xff1a; [32704.121294] mlx5_core 0000:01:00.0…...

spring security oauth2.0的四种模式

OAuth 2.0 定义了 4 种授权模式&#xff08;Grant Type&#xff09;&#xff0c;用于不同场景下的令牌获取。以下是每种模式的详细说明、适用场景和对比&#xff1a; 一、授权码模式&#xff08;Authorization Code Grant&#xff09; 适用场景 • Web 应用&#xff08;有后端…...

MyBatis-Plus 核心功能

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、条件构造器1、核心 Wrapper 类型基础查询示例SQL 查询使用 QueryWrapper 实现查询 更新操作示例场景一&#xff1a;基础更新SQL 查询使用 QueryWrapper 实现更新…...

阿里云实时计算Flink版产品体验测评

阿里云实时计算Flink版产品体验测评 什么是阿里云实时计算Flink应用场景实时计算Flink&自建Flink集群性价比开发效率运维管理企业安全 场景落地 什么是阿里云实时计算Flink 实时计算Flink大家可能并不陌生&#xff0c;在实时数据处理上&#xff0c;可能会有所接触&#xf…...

少儿编程 scratch四级真题 2025年3月电子学会图形化编程等级考试Scratch四级真题解析(判断题)

2025年3月scratch编程等级考试四级真题 判断题&#xff08;共10题&#xff0c;每题2分&#xff0c;共20分&#xff09; 11、小圆点角色的程序如下左图所示&#xff0c;程序运行后的效果如下右图所示&#xff0c;自制积木中又调用了自己&#xff0c;这种算法叫做递归。 答案&a…...

【连载3】基础智能体的进展与挑战综述

基础智能体的进展与挑战综述 从类脑智能到具备可进化性、协作性和安全性的系统 【翻译团队】刘军(liujunbupt.edu.cn) 钱雨欣玥 冯梓哲 李正博 李冠谕 朱宇晗 张霄天 孙大壮 黄若溪 2. 认知 人类认知是一种复杂的信息处理系统&#xff0c;它通过多个专门的神经回路协调运行…...

Schaefer 400图谱

图谱下载&#xff1a; https://github.com/ThomasYeoLab/CBIG/tree/master/stable_projects/brain_parcellation/Schaefer2018_LocalGlobal/Parcellations/MNI 图 &#xff08;第一行&#xff09;显示了 Yeo et al. &#xff08;2011&#xff09; 的 7 网络和 17 网络分包。图…...

通过uri获取文件路径手机适配

青铜版本 return contentResolver.query(this, arrayOf(MediaStore.MediaColumns.DATA), null, null).let {if (it?.moveToFirst() true) {val columnIndex it.getColumnIndex(MediaStore.MediaColumns.DATA)val path it.getString(columnIndex)it.close()return path}&quo…...

Ubuntu 22.04 完美安装 ABAQUS 教程:从零到上手,解决兼容问题

教程概述与安装准备 本教程详细介绍了在 Ubuntu 22.04 系统上安装 ABAQUS 2023 及 ifort 2021 的步骤,并实现用户子程序的链接。教程同样适用于 ABAQUS 2021(需相应调整文件名和路径)以及 Ubuntu 18.04 至 22.04 系统,尽管未在所有版本上测试。需要注意的是,Intel 的 One…...

雷池WAF防火墙如何构筑DDoS防护矩阵?——解读智能语义解析对抗新型流量攻击

本文深度解析雷池WAF防火墙在DDoS攻防中的技术突破&#xff0c;通过智能语义解析、动态基线建模、协同防护体系三大核心技术&#xff0c;实现从流量特征识别到攻击意图预判的进化。结合2023年金融行业混合攻击防御案例&#xff0c;揭示新一代WAF如何通过协议级漏洞预判与AI行为…...

Linux权限理解

1.shell命令以及运行原理 下面来介绍一个话题&#xff0c;关于指令的运行原理&#xff0c;这里先简单理解就可以。当我们登上Linux后&#xff1a; yxx这里称之为用户名&#xff0c;VM-8-2-centos是主机名&#xff0c;~是当前目录&#xff0c;$是命令行提示符。 其中我们把上面的…...

使用labelme进行实例分割标注

前言 最近在学习实例分割算法&#xff0c;参考b站视频课教程&#xff0c;使用labelme标注数据集&#xff0c;在csdn找到相关教程进行数据集格式转换&#xff0c;按照相关目标检测网络对数据集格式的训练要求划分数据集。 1.使用labelme标注图片 在网上随便找了几张蘑菇图片&am…...

策略模式实现 Bean 注入时怎么知道具体注入的是哪个 Bean?

Autowire Resource 的区别 1.来源不同&#xff1a;其中 Autowire 是 Spring2.5 定义的注解&#xff0c;而 Resource 是 Java 定义的注解 2.依赖查找的顺序不同&#xff1a; 依赖注入的功能&#xff0c;是通过先在 Spring IoC 容器中查找对象&#xff0c;再将对象注入引入到当…...