Загрузка...

С++ задача

Тема в разделе C/C++ создана пользователем Ivan123123_inactive389967 18 авг 2018. 463 просмотра

Загрузка...
  1. Ivan123123_inactive389967
    Ivan123123_inactive389967 Автор темы 18 авг 2018 Заблокирован(а) 19 30 апр 2018
    Суть в том,что есть цифры 12 11 1 13 11 1 13 12 . Мне надо вывести эти цифры без дубликатов,а если они есть,то вывести сколько дубликатов.
    Например,
    1 2
    11 2
    13 2
    12 2
    Где 2 - это кол-во дубликатов,то есть копий
    С первой задачей я справился, а вот со второй никак.
    Помогите,плизз
     
  2. ILLICIT_inactive550572
    ILLICIT_inactive550572 18 авг 2018 Вы скоро сдохните от желания выделиться... 32 13 авг 2018
    У меня есть код, можешь его оптимизировать под себя немного, но у меня он работает со строками, но и твою задачу прекрасно выполняет.
    Код

    #include <iostream>
    #include <sstream>
    #include <string>
    #include <vector>
    #include <set>
    #include <algorithm>
    using namespace std;
    vector<string> v;
    set<string> s;
    void f(string t)
    {
    int n = count(v.begin(), v.end(), t); // считаем количество совпадений
    cout << t << ' ' << n << endl; // выводим слово и к-во совпадений
    }
    void to_set(string t)
    {
    s.insert(t); // вставляем в контейнер set
    }
    int main()
    {
    string srs;
    getline(cin, srs);
    istringstream is(srs); // создаем входной поток is из строки srs
    string t;
    while (is >> t) // по очереди слова вставляем в вектор
    v.push_back(t);

    //for_each(v.begin(), v.end(), f); // для каждого слова из вектора выполнить функцию f
    cout << endl;

    for_each(v.begin(), v.end(), to_set); // каждое слова из вектора заносим в set

    //ostream_iterator<string> out(cout,"\n"); // итератор вывода на экран
    //copy(s.begin(),s.end(),out); // выводим уникальные слова
    for_each(s.begin(), s.end(), f); // для каждого слова из набора выполнить функцию f

    system("pause");
    return 0;
    }

    [IMG]
    В первой строке вводишь значения через пробел, потом идет вывод элемента и сколько раз он повторяется
     
  3. ILLICIT_inactive550572
    ILLICIT_inactive550572 18 авг 2018 Вы скоро сдохните от желания выделиться... 32 13 авг 2018
    Боже мой нахуя ты сюда пишешь? Ты либо скинул бы твое гугловское решение, либо не флуди
     
  4. DSTR2
    DSTR2 19 авг 2018 ? 49 19 май 2017
    std::map использовать не судьба?
    Код

    #include "iostream"
    #include "string"
    #include "map"

    int main() {
    std::string source;
    std::getline(std::cin, source);
    std::map res;
    for (size_t i = 0; i < source.length(); ++i)
    res[source[i]]++;

    for (auto i : res)
    std::cout << i.first << " : " << i.second << std::endl;
    std::cin.get();

    }
     
  5. Ivan123123_inactive389967
    Ivan123123_inactive389967 Автор темы 21 авг 2018 Заблокирован(а) 19 30 апр 2018
    Парни,сделал так,но выводит
    Код
    3  1
    5 0
    7 2
    117 1
    а нужно
    Код
    3  1
    5 3
    7 2
    117 1
    Код вот:

    Код
    #include "stdafx.h"
    #include<iostream>
    #include<fstream>
    #include<sstream>
    #include<cmath>
    #include<cstdlib>
    #include<string>
    #include<list>
    #include<vector>
    #include<algorithm>
    #include<stdexcept>
    #include <iomanip>
    using namespace std;
    int main()
    {
    setlocale(0, "");
    ifstream ifs{ "D:\\asdd.txt" };
    vector <int> intich;
    int o;
    int sk = 1;
    while (ifs >> o)
    {
    intich.push_back(o);
    }
    sort(intich.begin(), intich.end());
    for (int i = 0; i < intich.size(); i++)
    {
    if (i == 0 || intich[i] != intich[i-1])
    {
    cout << intich[i] << setw(3) << sk << endl;
    sk = 0;
    }
    else if (i == 0 || intich[i] == intich[i-1])
    {
    sk++;
    }
    }
    system("pause");
    return 0;
    }
     
  6. RAMON_inactive531711
    Сложно:zachto:
     
  7. Ivan123123_inactive389967
    Ivan123123_inactive389967 Автор темы 21 авг 2018 Заблокирован(а) 19 30 апр 2018
  8. San32_inactive330533
    San32_inactive330533 22 авг 2018 Заблокирован(а) 1 9 мар 2018
    С этими числами не сработает, а вот с 69...
    хыыыым
     
  9. Ivan123123_inactive389967
    Ivan123123_inactive389967 Автор темы 22 авг 2018 Заблокирован(а) 19 30 апр 2018
  10. Ivan123123_inactive389967
    Ivan123123_inactive389967 Автор темы 22 авг 2018 Заблокирован(а) 19 30 апр 2018
    Никто не знает что ли?))
     
Top