|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||||||
Перенести элементы из одного вектора в другой21.06.2019, 19:10. Показов 7220. Ответов 47
Я не могу понять, почему если убрать erase и else ++k , то выборка элементов из первого массива работает,как надо, но при таких условиях я не смогу удалить из начального passengers уже использованные пути пользователей. Если же оставить как есть, то он переносит в массив active_users не только нужные, но и лишние элементы, не соответствующие условиям в скобках. Поясню. Я выбираю по задачае только те элементы, где при направлении вверх, этаж назначения больше этажа отправления и наоборот для направления вниз. Но при данной реализации erase у меня могут выбраться и лишние, т.е. для движения вверх он перенесет часть пользователей, которым надо вниз из passengers в active_users. Понятно, что ошибка в вычислениях моих, но где я не увидел? Даже вложил файл с полным кодом.
0
|
||||||
| 21.06.2019, 19:10 | |
|
Ответы с готовыми решениями:
47
Перенести элементы одного вектора в другой Как перенести элементы из одного массива в другой? Перенести все кратные 5 элементы из одного массива в другой |
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 21.06.2019, 19:22 | |
|
1
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||
| 21.06.2019, 19:24 [ТС] | ||
|
Раньше в старом коде меня passengers, теперь ухожу от этого, да неправильно.Надо менять. Просто я хочу менять passengers в своей области видимости функции, потому объявил void Elevation::Move_Call(std::vector< std::tuple<int, int, int> >& passengers)
0
|
||
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 21.06.2019, 19:26 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|
| 21.06.2019, 19:33 [ТС] | |
|
0
|
|
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 21.06.2019, 19:53 | |
|
Исправили? Работает?
0
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||
| 21.06.2019, 19:59 [ТС] | ||
|
0
|
||
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 21.06.2019, 20:03 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|||||||
| 21.06.2019, 20:09 [ТС] | |||||||
Добавлено через 2 минуты Максимальный этаж формируется, на это не жалуюсь. Вот еще лямбда подучить бы, а то не пойму, почему там l и r и даже сравнение, но это другая тема.
0
|
|||||||
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|
| 21.06.2019, 20:15 [ТС] | |
|
Тут в картинке показано, на какие этажи он приехал красным. И то, с чем ему по пути белым. Если этажи равны, то я хи не обработал нормально, случай этот.
0
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||||||
| 21.06.2019, 20:18 [ТС] | ||||||
|
Во втором файле результат исполнения при убранном erase и таком коде. Но это проблема, мне нужно ощищать passengers, а тут его не очистил.
Первые два вектора таплов я задал сам извне. Мне нужно было так, чтобы второй выбирался. он действительно выбирается, но выбираются лишние еще.
0
|
||||||
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|
| 21.06.2019, 20:30 [ТС] | |
|
Посмотрел на k в дебаге. Ну идет он ровно по всему passengers. какого он не добавляет то нужные?
0
|
|
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 21.06.2019, 20:30 | |
|
streamc, читаю ваше творение из архива, уточните смысл всех трех значений в кортеже, пожалуйста
0
|
|
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|
| 21.06.2019, 20:41 [ТС] | |
|
zayats80888,
std:: vector< std::tuple<int, int,int> > passengers; нулевое get<0> - индекс. Ну типа, чтобы с одного начинался. get<0> - этаж отправления пассажира. get<0> - этаж назначения пассажира. active_users - то же самое. но туда возьмутся из passengers те пользователи, которым по пути с лифтом и которых он физически сможет взять. Фишка еще в том, что он берет нулевого пользователя вектора passengers всегда, и от него все пляшет. Я хочу научиться passengers очистить и потом уже дорабатывать еще придется. То есть, вектор уже будет генерироваться по времени, лифт будет работать долго и т.п. Добавлено через 4 минуты Кстати, все, что там заккоментировано, можно снести нафиг.
0
|
|
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
||
| 21.06.2019, 20:54 | ||
![]() Я так понял лифт у вас один раз загружается, а потом едет и разгружает? Странный лифт...
0
|
||
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||||||||
| 21.06.2019, 20:59 [ТС] | ||||||||
|
Добавлено через 1 минуту
0
|
||||||||
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
||
| 21.06.2019, 21:05 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
||
| 21.06.2019, 21:06 [ТС] | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 23.11.2010
Сообщений: 136
|
|
| 21.06.2019, 21:08 [ТС] | |
|
Вот1
0
|
|
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
||
| 21.06.2019, 21:14 | ||
![]() Добавлено через 4 минуты streamc, а для чего вектор active_users?
0
|
||
| 21.06.2019, 21:14 | |
|
Помогаю со студенческими работами здесь
20
Как перенести все отрицательные элементы из одного массива в другой. Все элементы вектора, которые встречаются более одного раза, переписать в другой вектор Из одного массива сделать два массива, в один перенести четные элементы, в другой нечетные Из массива перенести четные элементы в другой массив.А нечетные перенести в другой массив Четные числа вектора перенести в другой список Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|