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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ScorpionL
0 / 0 / 0
Регистрация: 21.04.2010
Сообщений: 5
#1

Подключить нужные библиотеки и исправить ошибки - C++

27.02.2013, 01:59. Просмотров 351. Ответов 0
Метки нет (Все метки)

Здравствуйте, вот код кажется на с++, помогите пожалуйста подключить нужные библиотеки, исправить ошибку или сделать проект, а то у меня никак неполучаеться.

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
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
int n;
vector < vector<int> > a;      // Матрица эффективности a[разраб][задача]
vector<int> xy, yx;             // Паросочетания: xy[разраб], yx[задача]
vector<char> vx, vy;            // Альтернирующее дерево vx[разраб], vy[задача]
vector<int> maxrow, mincol;     // Способности, изученность
 
bool dotry (int i) {
    if (vx[i]) return false;
    vx[i] = true;
    for (int j=0; j<n; ++j)
        if (a[i][j]-maxrow[i]-mincol[j] == 0)
            vy[j] = true;
    for (int j=0; j<n; ++j)
        if (a[i][j]-maxrow[i]-mincol[j] == 0 && yx[j] == -1) {
            xy[i] = j;
            yx[j] = i;
            return true;
        }
    for (int j=0; j<n; ++j)
        if (a[i][j]-maxrow[i]-mincol[j] == 0 && dotry (yx[j])) {
            xy[i] = j;
            yx[j] = i;
            return true;
        }
    return false;
}
 
int main() {
 
    // ... чтение a ...
    
    mincol.assign (n, 0);
    minrow.assign (n, 0);
    for (int i=0; i<n; ++i)
        for (int j=0; j<n; ++j)
            maxrow[i] = max (maxrow[i], a[i][j]);
 
    xy.assign (n, -1);
    yx.assign (n, -1);
    for (int c=0; c<n; ) {
        vx.assign (n, 0);
        vy.assign (n, 0);
        int k = 0;
        for (int i=0; i<n; ++i)
            if (xy[i] == -1 && dotry (i))
                ++k;
        c += k;
        if (k == 0) {
            int z = INF;
            for (int i=0; i<n; ++i)
                if (vx[i])
                    for (int j=0; j<n; ++j)
                        if (!vy[j])
                            z = min (z, maxrow[i]+mincol[j]-a[i][j]);
            for (int i=0; i<n; ++i) {
                if (vx[i]) maxrow[i] -= z;
                if (vy[i]) mincol[i] += z;
            }
        }
    }
 
    int ans = 0;
    for (int i=0; i<n; ++i)
        ans += a[i][xy[i]];
    printf ("%d\n", ans);
    for (int i=0; i<n; ++i)
        printf ("%d ", xy[i]+1);
}
 Комментарий модератора 
Создавайте тему в соответствующем разделе
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 01:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подключить нужные библиотеки и исправить ошибки (C++):

Добавление библиотек в Visual Studio. Откуда взять нужные библиотеки? - C++
Скачал проект, но Visual не может найти библиотеки, используемые в этом проекте. Есть ли какой-нибудь репозитарий, в котором можно найти...

Как скомпилировать проект чтобы вложились нужные библиотеки!!! - C++
Привет, народ может поможете. Как мне скомпилировать проект чтобы в папке с прогой, С++ вложил все нужные ей библиотеки, dll? (С++ Архитект...

Найти ошибки в коде и исправить эти ошибки (Наследование) - C++
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h (inline) #pragma once class list...

Найти ошибки в коде и исправить эти ошибки - C++ - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить откуда. A.h #pragma once ...

Найти ошибки в коде и исправить эти ошибки - C++
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private: int* a; size_t size_; ...

Подключить библиотеки mysql - C++
Доброго времени суток, господа программисты! У меня задача - поправить код C++, работающий с mysql. Пользуюсь clang+gedit под fedora...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2013, 01:59
Привет! Вот еще темы с ответами:

Не может подключить библиотеки - C++
Написал программу, запускаю а она пишет типа не нашла библиотеки iostream и math. Что можно сделать?

Возможно ли подключить к файлу все библиотеки? - C++
Возможно ли подключить к файлу .cpp все библиотеки, одной командой?

Как подключить библиотеки в заголовочном файле? - C++
Для работы заголовочного файла (&quot;russianletters.h&quot;) необходимо дополнительно подключить библиотеки stdio.h и windows.h. В результате...

Как подключить библиотеки OpenCV 3.0.0 к visual studio 2012? - C++
Как подключить библиотеки OpenCV 3.0.0 к visual studio 2012?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru