思路
- 先找到序列的最大值(max)和最小值(min)。
- 在判断与替换。
代码
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6;
int a[N+5];
int main(){int n,k;cin>>n>>k;int maxS=INT_MIN,minS=INT_MAX;for(int i=1;i<=n;i++){cin>>a[i];maxS=max(maxS,a[i]);minS=min(minS,a[i]);}for(int i=1;i<=n;i++){if(a[i]>k){a[i]=maxS;}else if(a[i]<k){a[i]=minS; }}for(int i=1;i<=n;i++){cout<<a[i]<<' ';}return 0;
}