C++Advanced-Maps and Sets - Exercise, Problem - Miners
Проблема е, че ми ги принтира лексикографски а не по реда в който ги въвеждам.
Пробвах да чета инпута в map<queue<string>, int>, но накрая имам проблем с принтирането.
Ако някой може да помогне.
#include <iostream>
#include <map>
#include <string>
std::map<std::string, int> readInput() {
std::map<std::string, int> resources;
int value = 0;
std::string resource;
std::string delimiter = "stop";
while (true) {
std::cin >> resource;
if (resource == delimiter) {
break;
}
std::cin >> value;
resources.emplace(resource, value);
}
return resources;
}
void print(const std::map<std::string, int>& resources) {
for (std::map<std::string, int>::const_iterator it = resources.begin();
it != resources.end(); ++it) {
std::cout << it->first << " -> " << (*it).second << "\n";
}
std::cout << std::endl;
}
//gold -> 170 silver -> 10 copper -> 17
int main() {
std::map<std::string, int> reseources = readInput();
print(reseources);
return 0;
}
Благодаря, два дена си играх :)