vector<string> decode_queue(const string& data) { if (0 == data.size()) return vector<string>(); stringstream stream(data); istream_iterator<std::string> begin(stream); istream_iterator<std::string> end; vector<string> vstrings(begin, end); return vstrings; }
/** * @brief getter for the tags of the entry * * @return A vector containing all tags as string */ std::vector<std::string> getTags () const { if (this->hasMeta (ELEKTRA_REST_MODEL_ENTRY_META_TAGS)) { std::string tags = this->getMeta<std::string> (ELEKTRA_REST_MODEL_ENTRY_META_TAGS); std::stringstream ss (tags); std::istream_iterator<std::string> ss_begin (ss); std::istream_iterator<std::string> ss_end; std::vector<std::string> vstrings (ss_begin, ss_end); return vstrings; } else { return std::vector<std::string> (); } }
int main() { std::string input; std::getline (std::cin, input); // http://stackoverflow.com/questions/5607589/right-way-to-split-an-stdstring-into-a-vectorstring std::stringstream ss(input); std::istream_iterator<std::string> begin(ss); std::istream_iterator<std::string> end; std::vector<std::string> vstrings(begin, end); std::vector<int> numbers(vstrings.size(), 0); for(int i = 0 ; i < vstrings.size() ; ++i) { int num = std::stoi(vstrings[i], nullptr, 10); numbers[i] = num; } int sum = std::accumulate(numbers.begin(), numbers.end(), 0); printf("%d\n", sum); return 0; }
bool IRCHandleBattleshipPrivMsg::operator()(const IRCCommand& cmd) { if (cmd.GetCommand() == "PRIVMSG" && cmd.GetTrailing()[0] == '>') { // if from channel, ignored // otherwise, use whisper format auto command = cmd.GetTrailing(); command = command.substr(1); std::stringstream ss(command); std::istream_iterator<std::string> end; std::vector<std::string> vstrings(std::istream_iterator<std::string>(ss), end); if (vstrings.size() > 0U) { auto request = vstrings[0]; vstrings.erase(vstrings.begin()); warboat_handler->Handle(cmd.GetSource(), request, vstrings); } } return false; }
void Solver::parser(void) { std::string line; std::ifstream infile(file); bool header = true; std::vector<int> tmp; std::string endline; while (std::getline(infile, line)) { std::stringstream ss(line); std::istream_iterator<std::string> begin(ss); std::istream_iterator<std::string> end; std::vector<std::string> vstrings(begin, end); if (header) { header = false; data.nbVars = atoi(vstrings[0].c_str()); data.nbConstraints = atoi(vstrings[1].c_str()); if (vstrings.size() == 3) data.bestObj = atoi(vstrings[2].c_str()); else data.bestObj = -1; } else { for (unsigned int i = 0; i < vstrings.size(); i++) { if (tmp.size() >= data.nbVars) { data.values.push_back(tmp); tmp.clear(); } tmp.push_back(atoi(vstrings[i].c_str())); } } if (!line.empty()) endline = line; } std::stringstream ss(endline); std::istream_iterator<std::string> begin(ss); std::istream_iterator<std::string> end; std::vector<std::string> vstrings(begin, end); for (unsigned int i = 0; i < vstrings.size(); i++) data.maxCapacity.push_back(atoi(vstrings[i].c_str())); std::cout << "> Problem informations: nb_vars=" << data.nbVars; std::cout << " nb_constraints=" << data.nbConstraints; std::cout << " best_result=" << data.bestObj << std::endl; std::cout << "> Data matrix:" << std::endl << std::endl; for (unsigned int i = 0; i < data.values.size(); i++) { if (i == 0) std::cout << "Profit: "; else std::cout << "Constraint " << i << ": "; for (unsigned int j = 0; j < data.values[i].size() - 1; j++) std::cout << data.values[i][j] << " "; std::cout << data.values[i][data.values[i].size() - 1] << std::endl; if (i == 0) std::cout << std::endl; } std::cout << std::endl; std::cout << "Max capacity: "; for (unsigned int i = 0; i < data.maxCapacity.size(); i++) std::cout << data.maxCapacity[i] << " "; std::cout << std::endl << std::endl; }