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

Определить массу и количество тыкв, которые будут вывезены первым рейсом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разность массива чисел http://www.cyberforum.ru/cpp-beginners/thread1531333.html
Привет всем =) есть код для ввода массива из 5-ти чисел и вывода их суммы( ниже ). Решил сделал разность введенных чисел, но ничего не вышло =( Помогите сделать разность чисел массива. Код: ...
C++ Определить наибольшее из введенных чисел Вводятся четыре целых числа : a, b, c и d. Определить наибольшее из введенных чисел. (у меня что-то не получается(мне нужен самый простой код на c++)) #include<iostream> using namespace std; int... http://www.cyberforum.ru/cpp-beginners/thread1531286.html
C++ Исправить код
void main () { const int size= 10; int a; srand(time(NULL)); for (int i = 0; i < size; i++) a = rand() % 11 - 5; for (i = 0; i < size; i++) cout << a << " "; for (i = 0; i < size;...
C++ Определить номер числа в последовательности, по абсолютной величине самого близкого к своему номеру
язык C++ Вводится последовательность вещественных чисел, оканчивающаяся нулём, и состоящая более чем из одного ненулевого элемента. Определить, номер числа, по абсолютной величине самого близкого к...
C++ Симметрична ли матрица относительно ее вертикали? http://www.cyberforum.ru/cpp-beginners/thread1531263.html
Дана квадратная матрица порядка n.n-парное.Является ли она симметрична относительно ее вертикале?Помогите пожалуйста.
C++ не выводит строки Доброго времени суток, я дико туплю и хз как исправить. Программа выводит строки, но они пустые(см. комменты) #include <iostream> #include <conio.h> #include <string> using namespace std;... подробнее

Показать сообщение отдельно
Kerry_Jr
Модератор
Эксперт PHP
2206 / 2002 / 701
Регистрация: 14.05.2014
Сообщений: 5,865
Записей в блоге: 1
Завершенные тесты: 5
16.09.2015, 12:28
Narkok, вот такой велосипед
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
#include <iostream>
#include <vector>
#include <algorithm>
 
int calc(const std::vector<int> v, const int p, int &count)
{
    int sum = 0;
    for (int i = 0; i < v.size(); ++i)
    {
        if (sum < p)
        {
            sum += v[i];
            ++count;
        }
        else if (sum > p)
        {
            sum -= v[i-1];
            --count;
            break;
        }
        else break;
    }
    return sum;
}
 
int main()
{
    int p, n, sum1 = 0, sum2 = 0, count1 = 0, count2 = 0;
    std::cin >> p >> n;
    std::vector<int> v(n);
    for_each(v.begin(), v.end(), [](int &i){ std::cin >> i; });
    std::sort(v.begin(), v.end(), [](int i, int j){ return i < j; });
    sum1 = calc(v, p, count1);
    std::sort(v.begin(), v.end(), [](int i, int j){ return i > j; });
    sum2 = calc(v, p, count2);
    if (sum1 > sum2 || (sum1 == sum2 && count1 > count2))
        std::cout << sum1 << ' ' << count1 << std::endl;
    else 
        std::cout << sum2 << ' ' << count2 << std::endl;
    
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru