Обміняти max і min

Оновлено: 30.09.2019

Дано масив з n цілих чисел. Замінити всі найбільші елементи на найменший, а найменші елементи на найбільший.

Вхідні дані

В першому рядку записано число n (n ≤ 100). В наступному рядку записано n цілих чисел, кожне з яких за модулем не перевищує 100.

Вихідні дані

Вивести оновлений масив.

Алгоритм розв’язку задачі

  • Знаходимо, за допомогою LINQ запитів, мінімальний та максимальний елементи списку;
  • Оператором Select здійснюємо заміну максимального на мінімальний і навпаки.

Розв’язок

using System;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        Console.ReadLine();
        var p = Array.ConvertAll(Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries), s => int.Parse(s)).ToList();
        var min = p.Min();
        var max = p.Max();
        var res = p.Select(x => x == max ? min : x == min ? max : x);
        Console.WriteLine(string.Join(" ", res));
    }
}
Поділитися: Vk Ok
comments powered by Disqus