题目描述 现在给出一排共 n 只鹅的身高,李白想知道最高的鹅比其他所有鹅高多少、最矮的鹅 比其他所有鹅矮多少。 请输出这两行信息。 输入格式 输入共两行。 第一行一个整数 n 表示鹅的数目。 第二行共 n 个整数 ai(i=1,2,3...n),表示第 i 只鹅的身高。 输出格式 输出共两行。 第一行共 n 个空格隔开的整数,第 i 个整数表示序列中第 i 只鹅比最高的那只鹅要 矮多少。 第二行共 n 个空格隔开的整数,第 i 个整数表示序列中第 i 只鹅比最矮的那只鹅要 高多少。 输入输出样例 输入 #1 6 4 7 8 6 3 2 输出 #1 4 1 0 2 5 6 2 5 6 4 1 0 说明/提示 李白一共有 6 只鹅,最高的一只身高为 8,最矮的一只身高为 2,然后分别作为被减 数和减数参与身高差计算可得结果。 对于 30% 数据,保证 0≤ai≤30,1≤n≤20。 对于 100% 数据,保证 0≤ai≤1018,1≤n≤106。 用c++语言
```cpp #include <iostream> #include <vector> #include <algorithm> int main() { int n; std::cin >> n; std::vector<long long> heights(n); for (int i = 0; i < n; ++i) { std::cin >> heights[i]; } long long maxHeight = *std::max_element(heights.begin(), heights.end()); long long minHeight = *std::min_element(heights.begin(), heights.end()); for (int i = 0; i < n; ++i) { std::cout << maxHeight - heights[i]; if (i < n - 1) { std::cout << " "; } } std::cout << std::endl; for (int i = 0; i < n; ++i) { std::cout << heights[i] - minHeight; if (i < n - 1) { std::cout << " "; } } std::cout << std::endl; return 0; } ``` 代码解释 1. 输入处理: - 首先读取鹅的数量 `n`。 - 接着使用 `std::vector` 存储每只鹅的身高,通过循环将输入的身高数据存入 `heights` 向量。 2. 找出最高和最矮的鹅的身高: - 使用 `std::max_element` 函数找出 `heights` 向量中的最大值,即最高鹅的身高 `maxHeight`。 - 使用 `std::min_element` 函数找出 `heights` 向量中的最小值,即最矮鹅的身高 `minHeight`。 3. 输出每只鹅与最高鹅的身高差: - 遍历 `heights` 向量,计算每只鹅与最高鹅的身高差并输出,相邻的差值用空格分隔。 4. 输出每只鹅与最矮鹅的身高差: - 再次遍历 `heights` 向量,计算每只鹅与最矮鹅的身高差并输出,相邻的差值用空格分隔。 复杂度分析 - 时间复杂度:$O(n)$,主要是遍历向量和查找最大最小值的操作。 - 空间复杂度:$O(n)$,主要用于存储每只鹅的身高。 [2025-11-16 20:19:06 | AI问答 | 549点数解答]
- [字节豆包] 题目描述 现在给出一排共 n 只鹅的身高,李白想知道最高的鹅比其他所有鹅高多少、最矮的鹅 比其他所有鹅矮多少。 请输出这两行信息。 输入格式 输入共两行。 第一行一个整数 n 表示鹅的数目。 第二行共 n 个整数 ai(i=1,2,3...n),表示第 i 只鹅的身高。 输出格式 输出共两行。 第一行共 n 个空格隔开的整数,第 i 个整数表示序列中第 i 只鹅比最高的那只鹅要 矮多少。 第二行共 n 个空格隔开的整数,第 i 个整数表示序列中第 i 只鹅比最矮的那只鹅要 高多少。 输入输出样例 输入 #1 6 4 7 8 6 3 2 输出 #1 4 1 0 2 5 6 2 5 6 4 1 0 说明/提示 李白一共有 6 只鹅,最高的一只身高为 8,最矮的一只身高为 2,然后分别作为被减 数和减数参与身高差计算可得结果。 对于 30% 数据,保证 0≤ai≤30,1≤n≤20。 对于 100% 数据,保证 0≤ai≤1018,1≤n≤106。 用c++语言(549点数解答 | 2025-11-16 20:19:06)23
- [字节豆包] 题目描述 最近有 n 个不爽的事,每句话都有一个正整数刺痛值(心理承受力极差)。爱与愁大神想知道连续 m 个刺痛值的和的最小值是多少,但是由于业务繁忙,爱与愁大神只好请你编个程序告诉他。 输入格式 第一行有两个用空格隔开的整数,分别代表 n 和 m。 第 2 到第 (n+1) 行,每行一个整数,第 (i+1) 行的整数 a i 代表第 i 件事的刺痛值 a i 。 输出格式 输出一行一个整数,表示连续 m 个刺痛值的和的最小值是多少。 输入输出样例 输入 #1复制 8 3 1 4 7 3 1 2 4 3 输出 #1复制 6 说明/提示 数据规模与约定 对于 30% 的数据,保证 n≤20。 对于 60% 的数据,保证 n≤100。 对于 90% 的数据,保证 n≤10 3 。 对于 100% 的数据,保证 0≤m≤n≤3×10 3 ,1≤a i ≤100。 用c++语言(241点数解答 | 2025-11-24 19:52:43)24
- [字节豆包] 请你补全代码,把数组a的所有元素都赋值为100。 输入: 无 输出: 共二十行,每行一个整数,为数组中的每个数。 输入样例: 无 输出样例: 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100#include <iostream> using namespace std; int main() { int a[20]; for ( ) { } for (int i = 0; i < 20; i++) { cout << a[i] << endl; } return 0; }(164点数解答 | 2025-11-01 19:14:57)36
- [字节豆包] 三倍子串 内存限制: 256 Mb时间限制: 1000 ms 题目描述 给定一个十进制正整数 n n,请问可以从 n n 中截取多少种不同的子串,使得子串构成的数字是 3 3 的倍数。 例如:当 n = 1234 n=1234 时,有且仅有 3 3, 12 12, 123 123, 234 234 这四个子串是 3 3 的倍数。 输入格式 单个整数:表示输入的数字 n n 输出格式 单个整数:表示 3 3 的倍数的子串数量。 数据范围 对于 20 % 20% 的数据, 1 ≤ n ≤ 1 0 9 1≤n≤10 9 ; 对于 50 % 50% 的数据, 1 ≤ n ≤ 1 0 100 1≤n≤10 100 ; 对于 70 % 70% 的数据, 1 ≤ n ≤ 1 0 1000 1≤n≤10 1000 ; 对于 100 % 100% 的数据, 1 ≤ n ≤ 1 0 100000 1≤n≤10 100000 样例数据 输入: 95764 输出: 6 说明: 子串6,9,57,576,957,9576是3的倍数 输入: 1111 输出: 2 说(486点数解答 | 2025-08-29 11:52:55)142
- [字节豆包] 买二送一 内存限制: 256 Mb时间限制: 1000 ms 题目描述 我们需要买 n n 本书,第 i i 本书的价格为 a i a i 。 现有买二送一的促销活动:凡购买两本书,可以免费带走第三本书,但免费书的价格不能超过两本付费书中任意一本的价格即可。 请问,买下全部的书最少需要多少钱? 输入格式 第一行:单个整数表示 n n; 第二行: n n 个整数表示 a 1 , a 2 , … , a n a 1 ,a 2 ,…,a n 。 输出格式 单个整数:表示将所有书买下的最少钱数。 数据范围 对于 40 % 40% 的分数, 1 ≤ n ≤ 100 1≤n≤100; 对于 70 % 70% 的分数, 1 ≤ n ≤ 5000 1≤n≤5000; 对于 100 % 100% 的分数, 1 ≤ n ≤ 100 , 000 1≤n≤100,000, 1 ≤ a i ≤ 30 , 000 1≤a i ≤30,000。 样例数据 输入: 6 1 3 2 4 5 6 输出: 16 说明: 买2与3,送1; 买5与6,送4。 语言(315点数解答 | 2025-08-14 15:09:51)133
- [字节豆包] 题目描述 给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值。 输入格式 一行,为需要你计算的表达式,表达式中只包含数字、加法运算符 + 和乘法运算符 *,且没有括号,所有参与运算的数字均为0到231−1 之间的整数。 输入数据保证这一行只有 0*********+* 这 12 种字符。 输出格式 一个整数,表示这个表达式的值。 注意:当答案长度多于 4 位时,请只输出最后 4 位,前导 0 不输出。 输入输出样例 输入 #1 1+1*3+4 输出 #1 8 输入 #2 1+*********0*1 输出 #2 7891 输入 #3 1+1000000003*1 输出 #3 4 说明/提示 对于 30% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100。 对于 80% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤1000。 对于 100% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100000 用c++语言(730点数解答 | 2025-11-26 20:12:36)15
- [字节豆包] 题目描述 给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值。 输入格式 一行,为需要你计算的表达式,表达式中只包含数字、加法运算符 + 和乘法运算符 *,且没有括号,所有参与运算的数字均为0到231−1 之间的整数。 输入数据保证这一行只有 0*********+* 这 12 种字符。 输出格式 一个整数,表示这个表达式的值。 注意:当答案长度多于 4 位时,请只输出最后 4 位,前导 0 不输出。 输入输出样例 输入 #1 1+1*3+4 输出 #1 8 输入 #2 1+*********0*1 输出 #2 7891 输入 #3 1+1000000003*1 输出 #3 4 说明/提示 对于 30% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100。 对于 80% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤1000。 对于 100% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100000。 用c++语言,用简单方法(437点数解答 | 2025-11-26 20:13:21)18
- [字节豆包] 题目描述 给定m行n列的图像各像素点的灰度值,要求用如下方法对其进行模糊化处理: 1.四周最外侧的像素点灰度值不变; 2.中间各像素点新灰度值为该像素点及其上下左右相邻四个像素点原灰度值的平均值(四舍五入)。 输入格式 第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1<=n<=100,1<=m<=100。 接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0~255之间。 输出格式 m行,每行n个整数,为模糊处理后的图像。相邻两个整数之间用单个空格隔开。 输入样例 4 5 100 0 100 0 50 50 100 200 0 0 50 50 100 100 200 100 100 50 50 100 输出样例 100 0 100 0 50 50 80 100 60 0 50 80 100 90 200 100 100 50 50 100 说明/提示 用c++(655点数解答 | 2025-12-01 14:24:01)15
- [字节豆包] 题目描述 给定只由 6 种括号字符组成的字符串:(, ), [, ], {, }。判断每个字符串是否为“合法括号序列”, 合法则输出 YES,否则输出 NO。合法括号序列的定义: 空串合法; 若 A 合法,则 (A), [A], {A} 均合法; 若 A 与 B 均合法,则 AB 合法。 输入格式 第一行一个整数 T,表示数据组数。接下来 T 行,每行一个只包含上述 6 种字符的字符串。 输出格式 对于每个字符串,输出一行: 若其为合法括号序列,输出 YES; 否则输出 NO。 输入输出样例 输入 1 ()[]{} 输出 YES 输入 6 () ([)] ([]){} (((( {[()()]} }{ 输出 YES NO YES NO YES NO 说明/提示 记单串长度记为 ∣S∣。测试数据满足 1≤∣S∣≤106,1≤T≤2×105,同一输入文件内总长度 ∑∣S∣≤2×106,字符串只包含字符 ()[]{}。 用c++语言(339点数解答 | 2025-12-03 18:22:21)9
- [字节豆包] 题目描述 扶苏来到了一个迷宫,这个迷宫是一个 n 行 m 列的数字矩阵,第 i 行第 j 列写有 一个数字 ai,j。保证 1≤ai,j≤4。 扶苏会在这个迷宫的某一个位置。假设她当前在迷宫的第 i 行第 j 列: 如果 ai,j=1,则她会向上移动一行,即 i 减小 1。 如果 ai,j=2,则她会向下移动一行,即 i 增大 1。 如果 ai,j=3,则她会向左移动一列,即 j 减小 1。 如果 ai,j=4,则她会向右移动一列,即 j 增大 1。 初始时和每次移动到另一个格子后,她都会按上述的规则继续进行新的移动。 当她移动出迷宫,即到达第 0 行、第 0 列、第 n+1 行、第 m+1 列时,称她离开了 迷宫。 现在,你要回答 q 次询问,每次给定一个扶苏的初时位置,你要回答她在多少次移动 后会离开迷宫,或报告她永远不会离开迷宫。 输入格式 第一行是三个整数,表示迷宫的行数 n、列数 m 和询问数 q。 接下来 n 行,每行 m 个整数,表示矩阵 a。 接下来 q 行,每行两个整数 xi,yi,表示一次查询初时在第 xi行yi列时她离开迷宫需 要的步数。(819点数解答 | 2025-11-26 19:27:35)19
- [阿里通义] # 按要求定义并调用以下函数。 # 1.定义一个无参数、无返回值的函数print_hi_human(),调用函数时,在函数中输出“人类,你好!”。 # 2.定义一个无参数、有返回值的函数say_hi_human(),调用函数时输出函数的返回值,返回字符串“人类,你好!”。 # 3.定义一个函数say_hi_person(),有一个参数full_name,接受人名的字符串为参数,函数的返回值为“***,你好!”,例如函数的参数为“李白”,返回值为“李白,你好!”。 # 4.定义一个函数say_hi_gender(),有2个参数full_name和gender,接受人名和性别的字符串为参数,函数的返回值为“尊敬的***先生/女士,欢迎来到火星!”,例如函数的参数人名为“李白”,性别为”男”,返回值为“尊敬的李白先生,欢迎来到火星!”。 # 请完成以下代码填空。 #1.定义并调用函数print_hi_human() def print_hi_human(): print('人类,你好!') print(print_hi_human()) #调用函数print_hi_human() #(368点数解答 | 2024-11-25 22:47:20)329
- [字节豆包] 1. (填空题) 按要求定义并调用以下函数。 1.定义一个无参数、无返回值的函数print_hi_human(),调用函数时,在函数中输出“人类,你好!”。 2.定义一个无参数、有返回值的函数say_hi_human_(),调用函数时输出函数的返回值,返回字符串“人类,你好!”。 3.定义一个函数say_hi_person(),有一个参数full_name,接受人名的字符串为参数,函数的返回值为“***,你好!”,例如函数的参数为“李白”,返回值为“李白,你好!”。 4.定义一个函数say_hi_gender(),有2个参数full_name和gender,接受人名和性别的字符串为参数,函数的返回值为“尊敬的***先生/女士,欢迎来到火星!”,例如函数的参数人名为“李白”,性别为”男”,返回值为“尊敬的李白先生,欢迎来到火星!”。 请完成以下代码填空。 #1.定义并调用函数print_hi_human() ---1--- print_hi_human(): print('人类,你好!') ---2--- #调用函数print_hi_human()(101点数解答 | 2024-11-26 16:24:40)191