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

Ошибка в программе или алгоритме (Задача Океанариум) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Hotkeys http://www.cyberforum.ru/cpp-beginners/thread932928.html
Добрый день. Нужен совет как более правильно сделать следующую вещь: у приложения будут функции(к примеру "переключить трек" и т.д.). Нужно дать пользователю возможность назначать на различные функции горячие клавиши. Сам вопрос в том как правильней хранить эти функции и выбирать для вызова при срабатывании хоткея. Что-то такое в общем.
C++ Передача функции статического двумерного массива Доброго времени суток, уважаемые жители Cyber-Forum. Не так давно я начал самостоятельно изучать Си++, и если честно, то ето вообще мой первый опыт в программировании, поэтому в процессе изучения накапливаются вопросы, на которые некому ответить. Мой вопрос уже задавался ранее неоднократно, так что он вряд ли покажется вам чем-то новым, но я спрошу, так как в прочитанных мноу темах я не смог... http://www.cyberforum.ru/cpp-beginners/thread932835.html
C++ String для коротких строк
Здорова! Тут от пытаюсь разобрать такое понятие как класс String оптимизированный для коротких строк, это такой класс длинна строки у которого не превышает 8 символов. От интересно как его оптимизировать или он уже сам по себе будет оптимизирован из за того что строка будет короткая? Какие у него преимущества? Просто я с этим понятием недавно столкнулся, раньше как то не задумывался. Конечно...
Задача Timus C++
Почему не проходит тест? Может кто знает? http://acm.timus.ru/problem.aspx?space=1&num=1001 #include <vector> int main() { std::vector<int> v;
C++ Универсальный класс для строк http://www.cyberforum.ru/cpp-beginners/thread932803.html
Здорова господа! Есть задачка "Подумайте как можно спроектировать идеальный класс для универсальной работы с текстами. Назовите его Text. Какими он будет обладать возможностями? Какую нагрузку на реализацию вызовут ваши «идеальные» средства?" Давайте ее хотя бы теоретически мб решим?
C++ перевод строки CHAR Добрый день уважаемые форумчане) Пишу в IARе под AVR столкнулся с проблеммой вычесть из строки лишние символы. к примеру приведу такой код void SHOW_TEXT(char *text, int color, int colors, int fon) { char *sk; nlcd_Box(0, 0, 132, 132, 1, fon); sk=text; nlcd_Text(sk,10,5,color,fon); подробнее

Показать сообщение отдельно
Bohes_
4 / 4 / 0
Регистрация: 18.06.2013
Сообщений: 51
03.08.2013, 16:27     Ошибка в программе или алгоритме (Задача Океанариум)
Помогите,пожайлуста, найти неточности\ошибку в программе или в ее алгоритме.

Условие
Петя часто ходит в Океанариум — особенно ему там нравится один большой аквариум, в котором плавают разнообразные маленькие рыбки. Пете очень интересно, сколько всего рыбок в аквариуме, но часть из них всё время скрывается за камнями и водорослями. Поэтому каждый раз, когда Петя подходил к аквариуму, он выписывал на листок названия всех рыбок, которые были ему видны.
Всего у Пети скопилось N таких листков. Требуется написать программу, которая по Петиным записям определит минимально возможное количество рыбок в аквариуме.
Например, если в первый раз Петя увидел трёх гуппи и одного вуалехвоста, а во второй раз — четырёх вуалехвостов, то всего в аквариуме не менее 7 рыбок.
Рекомендуется рассмотреть частичные решения
N = 1,
каждый листок содержит ровно одно название рыбки.
Формат входного файла
Первая строка входного файла содержит число N. Далее следует последовательность из N описаний листков. В первой строке каждого описания содержится число рыбок Ki, в последующих Ki строках — названия рыбок.
Формат выходного файла
Выходной файл должен содержать единственное число — минимальное количество рыбок.
Ограничения
1 ≤ N, Ki ≤ 50, длина названий не превосходит 255 символов.
Мой код:
C++ (Qt)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <fstream>
#include <string>
using namespace std;
 
 
struct Fish
{
    string Name;
    unsigned char count; //минимально возможное число рыбок
    unsigned char count2; //количество рыбок на данном листке
};
int main()
{
    int i,j,a,b,N=-1; //a -- количество листков, b --число рыбок на данном листке
    int sum = 0;
    string tempName="";
    Fish * Aquarium = new Fish[51];
    ifstream f ("input.txt");
    
    for (i = 0; i < 51; ++ i)
        {
            Aquarium[i].Name = "";
            Aquarium[i].count = 0;
            Aquarium[i].count2 = 0;
        }
    
    
    f>>a;
    for (i = 1; i <= a; ++i)
    {
        
        f>>b;
        for (j=1; j <= b; ++j)
        {
            getline(f,tempName);
            bool isFind=false;
            char FindNumber = -1;
            for (int k = 0; k <= N; k++) //Поиск по названию рабки
                {
                    if (Aquarium[k].Name == tempName) {isFind = 1; FindNumber = k;}
                }
            if (isFind) 
                {
                    Aquarium[FindNumber].count2++;
                }
                else
                {
                    N++;
                    Aquarium[N].Name = tempName;
                    Aquarium[N].count2 ++; 
                }
                
        }
        
        for (int k =0; k <= N; ++k)
         {
            if (Aquarium[k].count < Aquarium[k].count2) {Aquarium[k].count = Aquarium[k].count2;}
            Aquarium[k].count2 = 0;
         }
        
    }
    
    ofstream o ("output.txt");
    
    for (int k=0; k <=N; ++k)
        sum +=Aquarium[k].count;
        
    o << sum;
    
        
    delete[] Aquarium;
    
    return 0;
}
Входной файл
3
5
Lionhead
Pompom
Pearlscale
Pearlscale
Lionhead
2
Pompom
Pompom
5
Lionhead
Lionhead
Ryukin
Pearlscale
Lionhead
Выходной
8
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru