Решение задачи "Самое частое число" с Mccme

Без пояснения   Просмотров: 11


Дан список. Не изменяя его и не используя дополнительные списки, определите, какое число в этом списке встречается чаще всего.

Если таких чисел несколько, выведите любое из них.

Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    string s;
    getline(cin, s);
    s.insert(0, " ");
    int pos = s.find(" "), pos1;
    if(s[s.size() - 1] == ' ')
        s.pop_back();
    vector<int> a;
    while(pos + 1){
        pos1 = s.find(" ", pos + 1);
        a.push_back(stoi(s.substr(pos + 1, pos1 - pos - 1)));
        pos = pos1;
    }
    int mx = 0, res = a[0];
    for(int i = 0; i < a.size() - 1; ++i){
        int k = 0;
        for(int j = i + 1; j < a.size(); ++j){
            if(a[i] == a[j]){
                ++k;
                a.erase(a.begin() + j);
                --j;
            }
        }
        if(k > mx){
            mx = k;
            res = a[i];
        }
    }
    cout << res;
    return 0;
}

         

 Администратор Photo Автор: Администратор


Код

a = list(input().split())
a = [int(i) for i in a]
mx = 0
for i in range(len(a)):
    if a.count(a[i]) > mx:
        mx = a.count(a[i])
        res = a[i]
print(res)

         

 Администратор Photo Автор: Администратор


Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться