[GESP2412三级] 数字替换

模拟

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int k;
	cin>>k;
	int a[100005]={};
	int max=-100005,min=100005;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
		if(max<a[i])
		{
		max=a[i];
		}	
		if(min>a[i])
		{
		min=a[i];
		}	
	}
	for(int i=0;i<n;i++)
	{
		if(a[i]>k)
		{
		cout<<max<<" ";
		}
		if(a[i]<k)
		{
		cout<<min<<" ";
		}
		if(a[i]==k)
		{
		cout<<k<<" ";
		}
	}
}
#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,k,a[100005]={},ba=-100000,sa=100000;
    cin>>n>>k;
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(a[i]>ba) ba=a[i];
        if(a[i]<sa) sa=a[i];
    }
    for(int i=0;i<n;i++){
        if(a[i]<k) cout<<sa<<" ";
        else if(a[i]>k) cout<<ba<<" ";
        else cout<<k<<" ";
    }
    return 0;
}