Професионална програма
Loading...
+ Нов въпрос
kthristow avatar kthristow 0 Точки

Принтиране на map от стрингове и вектор от double

Привет колеги,изпитвам затруднения при печатането на мап в реда на инпута,който идва от конзолата.Не разбирам логиката,която ми е нужна затова.На 2ра задача от лаба за мапове и сетове,това е единственото нещо,което не мога да направя.Виждам,че в повечето задачи,това се иска.Мисля,че най-вероятно трябва да използвам входния вектор,но не знам как.

 

Решението :https://pastebin.com/ckZUUzbq

Тагове:
0
C++ Advanced 10/06/2021 11:23:22
Smeshan avatar Smeshan 37 Точки

Привет,

ами аз не виждам къде казваш да принтира по ред както са влезли при входа. :?

В printSolution имаш параметър std::vector<std::string>& input, който не позлваш. Но не мисля, че ще ти свърши работа така или иначе. Аз бих ползвал std::set<std::string> в комбинация с queue, които да съм напълнил в mapOfGrades, точно след istr >> name;, с имената и последователността. И после в printSolution първия for цикъл го заменям с да чете от това queue, а втория ще намира името в мапа и ще прави смеките, както си го написал.

Надявам се съм помогнал.

Поздрави,

Илиян

1
10/06/2021 13:17:53
kthristow avatar kthristow 0 Точки

Благодарско,колега стана ми ясно най-сетне !!!!

0
gslavchev avatar gslavchev 5 Точки

Привет, колега. В тази задача входният вектор леко се обесмисля. Може директно в мапа да въвеждаш. Трябва ти обаче някаква структура, която да ти пази реда на постъпване от входа. Логиката е следната: като ти постъпи "име ", проверяваш дали го има вече в мап-а, и ако го няма го добавяш и в мапа и в другият списък. После при печат - печатиш данните от мап-а като ключовете ги взимаш от втория списък. Добавих в кода ти вектор, като втори списък. https://pastebin.com/7W0RyRmF

Успех

0
kthristow avatar kthristow 0 Точки

Благодаря колега,точно това направих и аз!!!Благодарско

0