GESP编程共123题,本题是整站第1446题,已经有人完成了本题,加油!
小杨有一个包含 n 个数字的序列 A,即 A=[a1,a2,…,an],他想将其中大于 k 的数字都替换为序列的最大值,将其中小于 k 的数字都替换为序列的最小值,请你帮他计算出替换后的序列。
第一行包含两个正整数 n,k,含义如题面所示。
第二行包含 n 个数字,代表序列 A。
输出 n 个整数,代表替换后的结果。
输入 #1
5 0 -2 -1 0 1 2
输出 #1
-2 -2 0 2 2
对于全部数据,保证有 1≤n≤10^5,∣k∣,∣ai∣≤10^5。
【代码解析】
根据题目要求,在接收数据完成后,首页先需要求出整个数组中的最大值和最小值,设定max_value和min_value并且初始化为数组中的第一个数,通过循环求解出最大值和最小值,最后通过for循环进行遍历操作并且输出,如果大于K就对数进行重新赋值max_value,如果小于K就对数组重新赋值min_value,并且配合输出格式的要求空格,完成程序设计。
【参考代码】
本站题目仅供学习,GESP版权归CCF所有,如有侵权请联系删除。站长陈老师QQ及微信:208234。