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

Платная лестница - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Датчик случайных чисел http://www.cyberforum.ru/cpp-beginners/thread1003003.html
Мне нужно задать 4 числа в промежутке от одного до 1000 датчиком случайных чисел. Использую такой код: int a,b,c,d; a=rand()%1000+1; b=rand()%1000+1; c=rand()%1000+1; d=rand()%1000+1; Но выводит 4 одинаковых числа. Что делать, чтобы они были разными?
C++ Компьютерная игра (платформы) Во многих старых играх с двумерной графикой можно столкнуться с подобной ситуацией. Какой-нибудь герой прыгает по платформам (или островкам), которые висят в воздухе. Он должен перебраться от одного края экрана до другого. При этом при прыжке с одной платформы на соседнюю, у героя уходит |y2–y1| единиц энергии, где y1 и y2 — высоты, на которых расположены эти платформы. Кроме того, у героя есть... http://www.cyberforum.ru/cpp-beginners/thread1003002.html
Функции. Получить все совершенные числа меньше заданного C++
Условие в названии темы. Помогите доработать (нужно передать само число "с" в функцию). Код: #include <iostream> using namespace std; bool f(int n); int main (void) {
Высота авл дерева - как считать? C++
Добрый вечер. Забавно. Предположим, что пустой указатель равен -1, высота пр - высота лев. А как посчитать высоту авл дерева с таким набором: 5, 3, 6, 2, 4? ----5 --3---6 2--4
C++ классы с++ http://www.cyberforum.ru/cpp-beginners/thread1002992.html
есть шаблонный класс, что-то вроде вектора. перегружаю оператор =. При разных типах vector<int> abc(5,3); vector<float> abd(5,3); впервые сталкиваюсь как быть? Как компилятор понимает что типы разные? класс то единый? почему внутри встроенные преобразования не срабатывают? что с этим делать? error: бинарный "==": не найден оператор, принимающий левый операнд типа "vector<Type>" (или...
C++ БДП - начало Задали нам реализовать бинарное дерево поиска с использованием классов, но вот синтаксис с++ я вообще не знаю. Начинаю прогать с нуля. Нужны ваши советы/ответы. Как вывести бинарное дерево на экран? Как убедиться что оно правильно заполняется? подробнее

Показать сообщение отдельно
newyork7776
 Аватар для newyork7776
346 / 339 / 79
Регистрация: 21.05.2013
Сообщений: 1,303
Завершенные тесты: 1
10.11.2013, 15:17  [ТС]     Платная лестница
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <vector>
using namespace std;
int minimalne(int a, int b)
{
    if (a>=b) {return b;}
    else return a;
}
int main()
{   
    vector <int> v;
    int n,k;
    int sum=0;
    cin >> n;
    if (n!=0){
    int* ans = new int[n];
    for(int i=0;i<n;i++)
    {   
        ans[i]=0;
        cin >> k;
        v.push_back(k);
    }
    for (int i=0;i<n;i++)
    {
        if (i==0) {ans[i]=v[i];};
        if (i==1) {ans[i]=v[i]+ans[i-1];};
        if (i>1) {ans[i]=minimalne(ans[i-1],ans[i-2])+v[i];};
    }
    cout <<ans[n-1] << "\n";}
}

вот я кидаю свой код на сайт вот задание

Добавлено через 38 секунд
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <vector>
using namespace std;
int minimalne(int a, int b)
{
    if (a>=b) {return b;}
    else return a;
}
int main()
{   
    vector <int> v;
    int n,k;
    int sum=0;
    cin >> n;
    if (n!=0){
    int* ans = new int[n];
    for(int i=0;i<n;i++)
    {   
        ans[i]=0;
        cin >> k;
        v.push_back(k);
    }
    for (int i=0;i<n;i++)
    {
        if (i==0) {ans[i]=v[i];};
        if (i==1) {ans[i]=v[i]+ans[i-1];};
        if (i>1) {ans[i]=minimalne(ans[i-1],ans[i-2])+v[i];};
    }
    cout <<ans[n-1] << "\n";}
}

результат
Тест Статус Время работы Астрономическое время работы Используемая память
1 Неправильный ответ 0 0.017 1306624
2 OK 0 0.019
3 Неправильный ответ 0 0.003 4096
4 Неправильный ответ 0 0.004 4096
5 Неправильный ответ 0.004 0.004 4096
6 OK 0.004 0.004 4096
7 OK 0 0.003 4096
8 Неправильный ответ 0 0.004 4096
9 Неправильный ответ 0 0.003 4096
10 Неправильный ответ 0.004 0.021 1298432
11 OK 0 0.011 4096
12 OK 0 0.004 4096
13 Неправильный ответ 0.004 0.004 4096
14 Неправильный ответ 0.004 0.003 4096

Добавлено через 2 минуты
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
34
35
36
37
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
    
    
    int n;
    int k;
    vector <int> v;
    cin >> n;
    int* MinE = new int[n];
 
 
    for(int i=0;i<n;i++)
    {
        cin >> k;
        v.push_back(k);
    }
 
    MinE[0]=0;
    MinE[1]=v[0];
    int E1,E2;
    for (int i=2;i<n;i++)
    {
        E1=(v[i]+v[i-1]);
        E2=(v[i]+v[i-2]);
 
        if (E1+MinE[i-1]<E2+MinE[i-2])
            MinE[i]=E1+MinE[i-1];
        else 
            MinE[i]=E2+MinE[i-2];
    }
 
    cout << MinE[n-1] << "\n";
}
Кликните здесь для просмотра всего текста
Тест Статус Время работы Астрономическое время работы Используемая память
1 Неправильный ответ 0 0.003 1306624
2 Неправильный ответ 0 0.003 1306624
3 Неправильный ответ 0 0.003 1306624
4 Неправильный ответ 0 0.004 1306624
5 Неправильный ответ 0.004 0.004 1298432
6 Неправильный ответ 0.004 0.004 1306624
7 Неправильный ответ 0 0.004 1306624
8 Неправильный ответ 0 0.004 1306624
9 Неправильный ответ 0 0.004 1306624
10 OK 0.004 0.003 1298432
11 OK 0 0.004 1306624
12 OK 0.004 0.004 1306624
13 Неправильный ответ 0.004 0.003 1306624
14 Неправильный ответ 0 0.003 1306624

2
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
    
    
    int n;
    int k;
    vector <int> v;
    cin >> n;
    int* MinE = new int[n];
    for(int i=0;i<n;i++)
    {
        cin >> k;
        v.push_back(k);
    }
    if (n>2){
    MinE[0]=0;
    MinE[1]=v[0];
    int E1,E2;
    for (int i=2;i<n;i++)
    {
        E1=(v[i]+v[i-1]);
        E2=(v[i]+v[i-2]);
 
        if (E1+MinE[i-1]<E2+MinE[i-2])
            MinE[i]=E1+MinE[i-1];
        else 
            MinE[i]=E2+MinE[i-2];
    }
 
    cout << MinE[n-1] << "\n";}
    else 
    {
        if (n==1) cout << v[0];
        if (n==2)
        {
            if (v[0]>=v[1]) cout << v[1];
            else cout << v[0];
        }
    }
}


Добавлено через 1 минуту
я уже много вариантов перепробовал но результата не найшол
 
Текущее время: 23:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru