返回首页 返回题库

数字替换

C++ 简单 GESP三级真题 #数组#循环

题目描述

题面描述

小杨有一个包含n个数字的序列A,即A={a₁,a₂,…,aₙ},他想将其中大于k的数字都替换为序列的最大值,将其中小于k的数字都替换为序列的最小值,请你帮他计算出替换后的序列。

输入格式

第一行包含两个正整数n,k,含义如题面所示。

第二行包含n个数字,代表序列A。

输出格式

输出n个整数,代表替换后的结果。

样例1

输入:

5 0
-2 -1 0 1 2

输出:

-2 -2 0 2 2

数据范围

对于全部数据,保证有1≤n≤105,|k|,|ai|≤105。

时间限制

1.0 s

内存限制

512.0 MB

💡 查看提示(先自己想一想再看)
考察知识点:一维数组的使用、遍历数组寻找最值、条件判断替换元素、循环输出控制格式(避免末尾多余空格)。 解题思路:首先读取输入的n、k和序列;然后遍历一次序列找到最大值和最小值;最后再次遍历序列,根据条件替换并输出,注意最后一个元素后不要输出空格。
⚙ 开始做这道题 3 人做过 · 3 收藏 · 17 浏览

讨论(0)