Форум программистов, компьютерный форум CyberForum.ru

Не могу разобраться в задаче - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ std::string -> std::wstring http://www.cyberforum.ru/cpp-beginners/thread619829.html
Как перевести данный код в код с использованием wstring ( посути использовать std::vector<std::wstring> refs; ) #include <vector> #include <string> #include <fstream> #include <iterator> std::vector<std::string> refs; std::string file_name="Результат.txt"; std::ofstream ofs1(file_name.c_str()); if(ofs1)
C++ Как скопировать из строки в буфер обмена помогите скопировать длинное число из Edita в буфер по нажатию кнопки http://www.cyberforum.ru/cpp-beginners/thread619827.html
Сортировка в лексографическом порядке(только чуть поправить код) C++
Есть структура "книга" struct Book { char name; char autor; int year; int number_of_copy; Book* link; } Books;
C++ Получить указатель из функции и использовать его в другой функции
Подскажите пожалуйста как из функции использовать в функции main указатель? пример void foo1() {u=sizeof(str1); int *l=&u; } int main(){ // тут я хочу вывести значение l; cout<<???? }
C++ Сортировка массива, по возрастанию на главной диагонали http://www.cyberforum.ru/cpp-beginners/thread619810.html
Условие программы которую нужно написать на с: путем перестановки квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу, следующий по величине - в позиции (2,2), следующий по величине в (3,3) и т.д., заполнив таким образом всю главную диагональ. Найти номер первой из строк, не содержащей ни одного положительного элемента. Суть в том что на...
C++ char* rev_str(char*); Как обратиться из main()? Подскажите пожалуйста: ниже приведе прототип функции. Как правильно обратиться к такой функции и что она вернет? По замыслу нужно вернуть строку(или адрес начала или указатель на 0 элемент.. Как то так) char* rev_str(char*); подробнее

Показать сообщение отдельно
diesel1
Сообщений: n/a

Не могу разобраться в задаче - C++

05.07.2012, 23:26. Просмотров 376. Ответов 3
Метки (Все метки)

В командных олимпиадах по программированию для решения предлагается не больше 11 задач. Команда может решать предложенные задачи в любом порядке. Подготовленные решения команда посылает в единую проверяющую систему соревнований. Вам предлагается написать эффективную, в том числе по используемой памяти, программу, которая будет статистически обрабатывать пришедшие запросы, чтобы определить наиболее популярные задачи. Следует учитывать, что количество запросов в списке может быть очень велико, так как многие соревнования проходят с использованием Интернет.
Перед текстом программы кратко опишите используемый вами алгоритмрешения задачи.
На вход программе в первой строке подаётся количество пришедших запросов N. В каждой из последующих N строк записано название задачи в виде текстовой строки. Длина строки не превосходит 100 символов, название может содержать буквы, цифры, пробелы и знаки препинания.
Пример входных данных:
6
А+B
Крестики-Нолики
Прямоугольник
Простой делитель
А+В
Простой делитель
..нужно вывести список задач с указанием количества заросов
Пример выходных данных для приведённого выше примера входных данных:
А+В 2
Простой делитель 2
Крестики-Нолики 1
Прямоугольник 1

ВОТ МОЙ КОД:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include"stdafx.h"
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
struct spisok{
    char name[100];
    int kolvo;
};
int main()
{
    int i,j,n,k=0;
    char str[100];
    spisok* structura=new spisok[11];
        cin>>n;
    for(i=0;i<n;i++)
      {cin.getline(str,100,'\n');
        
        for(j=0;j<=k;j++)
          {if((strcmp(str,structura[j].name)!=0)&&(j==k)) //мне кажеться ошибка в этом цикле,я несовсем правильно заполняю структуру,но изьян не могу найти=(
                   {strcpy(structura[j].name,str);
                    structura[j].kolvo=1;
                    k++;
                   }
          if (strcmp(str,structura[j].name)==0)
              (structura[j].kolvo)++;break;
        }
    }
    for(i=0;i<=k-1;i++)
        cout<<structura[i].name;
        cout<<structura[i].kolvo;
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru