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

Олимпиада - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поиск слов в строке состоящей из русских символов. http://www.cyberforum.ru/cpp-beginners/thread352193.html
Здравствуйте. Помогите пожалуйста с программой. Мне нужно найти местоположение слова в строке вводимой с консоли. #include <iostream> #include <string> using namespace std; int main() { setlocale(LC_ALL,"Russian_Russia.1251") ; int x; string a,b;
C++ Expression must be a modifiable lvalue Добрый день, прошу помощи. При компиляции ругается на (18): error C2276: '&' : illegal operation on bound member function expression (19): error C2436: 'p' : member function or nested class in constructor initializer list (20): error C2436: 'p' : member function or nested class in constructor initializer list В результате хочу при инициализации класса передать указатель на функцию для... http://www.cyberforum.ru/cpp-beginners/thread352182.html
C++ Смоделировать транспортные потоки
Помогите мне дали 3 лабы, а я с одной еле успеваю... Это вторая просто подскажите как делать.... Транспортные потоки на улицах города можно смоделировать движением жидкости. Имеется набор трасс, соединенных между собой P перекрестками, перенумерованными, начиная с 1. Для каждой трассы задана пропускная способность – количество воды, пропускаемой в единицу времени. Заданные пропускные...
Задача на цикл C++
Есть задачка на циклы. Она не компилируется... Помогите пож-та найти ошибку в коде, я в С++ вообще плохо разбираюсь. 1) Даны целые числа a, n, x1,...,xn.(n > 0).Определить каким по счету идет в последовательности x1,..,xn член равный а. Если такого члена нет, то ответом должно быть число 0. #include <iostream.h> #include <stdlib.h> #include <time.h> int main(int argc, char * argv) {
C++ Как осуществляется вывод на экран в windows приложениях? http://www.cyberforum.ru/cpp-beginners/thread352120.html
Собственно у меня есть несколько лабораторных по с++, так вот первые нужно сдать в виде консольных приложениях, а в последних сделать приложение с интерфейсом (MFC , SDI либо MDI ). Так вот как нужно делать вывод информации в классе (один из методов класса - печать данных о Студентах (полное имя, группа, балл)) чтобы потом это дело можно было прикрутить к интерфейсу? Как я понимаю просто в виде...
C++ метод гаусса найти метод гаусса n+1 значение определителя в n+1 точке, а затем решить систему из n+1 уравнение с n+1 неизвестными. составить соответствую программу, в которой входными параметрами являются матрица A и ее порядок n, а выходными коэффициенты характеристического многочлена подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.09.2011, 18:22     Олимпиада
detor FAR, Вот это:
http://********/index.asp?main=task&id_task=206
Ваша задача. Только там не нужно было количество пересадок выводить.
Вот решение этой задачи:
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
#include <stdio.h>
 
int main() {
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    int N, M, E, **mas, **mas_res, i, j, ii, jj;
    scanf("%d %d\n%d\n", &N, &E, &M);
    mas=new int*[M];
    for(i=0; i<M; i++)
    {
        mas[i]=new int[2*N+1];
        scanf("%d ", &mas[i][0]);
        for(j=1; j<mas[i][0]*2+1; j++)
            scanf("%d ", &mas[i][j]);
        scanf("\n");
    }
    mas_res=new int*[N];
    for(i=0; i<N; i++)
    {
        mas_res[i]=new int[2];
        mas_res[i][1]=1000000;
    }
    mas_res[0][1]=0;
    //
    for(i=1; i<N; i++)
    {
        for(j=0; j<N; j++)
            mas_res[j][0]=mas_res[j][1];
        for(ii=0; ii<M; ii++)
            for(jj=1; jj<mas[ii][0]*2+1; jj+=2)
                for(j=jj+2; j<mas[ii][0]*2+1; j+=2)
                    if(mas_res[mas[ii][jj]-1][1]<=mas[ii][jj+1] && mas_res[mas[ii][j]-1][1]>mas[ii][j+1])
                        mas_res[mas[ii][j]-1][1]=mas[ii][j+1];
    }
    if(mas_res[E-1][1]==1000000)
        printf("-1");
    else
        printf("%d", mas_res[E-1][1]);
    return 0;
}
Вам осталось только разобраться и добавить вывод количества пересадок.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru