#include #include #include #include #include using namespace std; char *build_string(char **words, int numwords) { int i, rvsize; char *rv; rvsize = (numwords == 0) ? 1 : numwords; for (i = 0; i < numwords; i++) { rvsize += strlen(words[i]); } rv = (char *) malloc(sizeof(char)*rvsize); strcpy(rv, ""); for (i = 0; i < numwords; i++) { if (i > 0) strcat(rv, " "); strcat(rv, strdup(words[i])); } return rv; } main() { string s; vector v; char **words; char *rv; int i; while (cin >> s) v.push_back(s); words = (char **) malloc(sizeof(char) * v.size()); for (i = 0; i < v.size(); i++) words[i] = strdup(v[i].c_str()); rv = build_string(words, v.size()); if (v.size() < 20) printf("%s\n", rv); exit(0); }