** с++ Напишите программу, которая сортирует элементы массива по возрастанию последней...

0 голосов
164 просмотров

На с++
Напишите программу, которая сортирует элементы массива по возрастанию последней цифры десятичной записи чисел.

Входные данные
Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 10000 .

Выходные данные
Программа должна вывести в одной строке элементы массива, отсортированного в порядке возрастания последней цифры в десятичной записи чисел, разделив их пробелами. Числа, у которых последняя цифра одинаковая, должны быть выведены в том же порядке, в котором они стояли в исходной последовательности.

Примеры
входные данные
6
219 234 890 81 73 96
выходные данные
890 81 73 234 96 219


Информатика (340 баллов) | 164 просмотров
Дан 1 ответ
0 голосов

//g++  5.4.0

#include
#include
#include
using namespace std;

int main()
{
    size_t N;
    cin >> N;
    vector a(N);
   
    for (size_t i = 0; i < N; ++i) 
        cin >> a[i];

    sort(a.begin(), a.end(), [&] (const int &z, cinst int&x) { 
        return z % 10 < x % 10; });
   
    for (const auto &i : a)
        cout << i << " ";<br>}

(4.2k баллов)
0

не все числа захватывает