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

Не могу разобраться в vector<> - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ ПОдскажите почему не работает rand? http://www.cyberforum.ru/cpp-beginners/thread969538.html
#include <iostream> #include <ctime> #include <cstdlib> using namespace std; struct item { int data; // данные item * next; // указатель на следующий элемен };
C++ Порядок вершин при поиске кратчайшего пути Есть алгоритм Дейкстры для поиска кратчайшего пути между вершинами. Прога ищет путь правильно и выдает число равное длине минимального пути, но никак не могу правильно сохранить сами номера вершин для их вывода(т.е. порядок вершин в кратчайшем пути). Не знаю в чем дело какие только условия отбора вершин не ставил, не могу придумать, не хватает опыта в программировании. #include <iostream>... http://www.cyberforum.ru/cpp-beginners/thread969532.html
Ошибка константа. как исправить? C++
помогите пожалуйста, как убрать эту ошибку?
Странное на мой взгляд объявление функции C++
Добрый день. В исходниках усмотрел следующую вещь: void __RPC_STUB IAMCollection_get_Count_Stub( IRpcStubBuffer *This, IRpcChannelBuffer *_pRpcChannelBuffer, PRPC_MESSAGE _pRpcMessage, DWORD *_pdwStubPhase); Теперь мучает вопрос, что сие есть. То есть что есть когда после типа возвращаемого функцией значения пишется какая-нибудь ересь, что это означает и что делает....
C++ Цвет текста в С++ http://www.cyberforum.ru/cpp-beginners/thread969502.html
Я использую system("color _,_,") для задания цвета текста и фона . При такой записи меняется цвет всего текста программы . А как сделать так , чтобы цвет менялся только на определённом фрагменте кода ? Подскажите , пожалуйста .
C++ Не работают программы, в чем ошибка? Условие: Определить, пересекаются ли линии у=ах+b и y=kx+m. Если пересекаются, найти точку пересечения. #include <iostream> #include <math.h> using namespace std; int main() { float a,k,b,m,x,y; cout<<"a="; cin>>a; cout<<"k="; подробнее

Показать сообщение отдельно
enigma18
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 6
05.10.2013, 18:49  [ТС]     Не могу разобраться в vector<>
Ура ура!
Получилось, хотя бы вывести

вот код если кому понадобится :

Кликните здесь для просмотра всего текста
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
#include <vector>
#include <algorithm>
#include <iostream>
 
using namespace std;
 
int main()
{
 
int m=8; // ребра
int n=5; // вершины
 
vector < pair < int, pair<int,int> > > g (m);
 
for(int i =0; i<m; ++i )
{
    std::cin>> g[i].second.first >> g[i].second.second >> g[i].first; // вводим числа.
}
 
 
int cost = 0;
vector < pair < int, pair<int,int> > > res;
 
sort (g.begin(), g.end());
vector<int> tree_id (n);
for (int i=0; i<n; ++i)
    tree_id[i] = i;
for (int i=0; i<m; ++i)
{
    int a = g[i].second.first,  b = g[i].second.second,  l = g[i].first; 
    if (tree_id[a] != tree_id[b])
    {
        cost += l;
        res.push_back (make_pair (a, make_pair(b,l)));
        int old_id = tree_id[b],  new_id = tree_id[a];
        for (int j=0; j<n; ++j)
            if (tree_id[j] == old_id)
                tree_id[j] = new_id;
    }
}
 
for(int i = 0; i !=res.size(); ++i)
    cout << res[i].first << " " << res[i].second.first << " " << res[i].second.second<< endl; // выводим
 
}


правда не получилось через вот этот цикл сделать
for( auto it = v.begin(); v != v.end(); ++it )

А как сделать чтобы сразу инициализировать vector?
как отдельно инициализировать написано в документации, а вот совместно с pair как то не получается...
 
Текущее время: 04:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru