Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

1 1 . 1 1 LAB: All permutations of names Write a program that lists all ways people can line up for a photo (

11.11 LAB: All permutations of names
Write a program that lists all ways people can line up for a photo (all permutations of a list of strings). The program will read a list of one word names (until -1), and use a recursive method to create and output all possible orderings of those names separated by a comma, one ordering per line.
When the input is:
Julia Lucas Mia -1
then the output is (must match the below ordering):
Julia, Lucas, Mia
Julia, Mia, Lucas
Lucas, Julia, Mia
Lucas, Mia, Julia
Mia, Julia, Lucas
Mia, Lucas, Julia
My Code:
#include
#include
#include
using namespace std;
void PrintAllPermutations(vector& names, vector& prefix, vector& results){
if (names.empty()){
string result;
for (const auto& name : prefix){
result += name +",";
}
result.pop_back(); // Remove the last comma
result.pop_back(); // Remove the space
results.push_back(result);
} else {
for (size_t i =0; i < names.size(); ++i){
vector remaining_names = names;
vector new_prefix = prefix;
new_prefix.push_back(remaining_names[i]);
remaining_names.erase(remaining_names.begin()+ i);
PrintAllPermutations(remaining_names, new_prefix, results);
}
}
}
int main(){
vector names;
string name;
while (cin >> name && name !="-1"){
names.push_back(name);
}
vector prefix;
vector results;
PrintAllPermutations(names, prefix, results);
for (const auto& perm : results){
cout << perm << endl;
}
return 0;
}
Error that won't go away:
main.cpp: In function bool testPassed(std::ofstream&):
main.cpp:50:43: error: too few arguments to function void PrintAllPermutations(std::vector >&, std::vector >&, std::vector >&)
50| PrintAllPermutations(permList, nameList);
|^
main.cpp:8:6: note: declared here
8| void PrintAllPermutations(vector& names, vector& prefix, vector& results){
|^~~~~~~~~~~~~~~~~~~~
Please fix.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Systems Design Implementation And Management

Authors: Carlos Coronel, Steven Morris

14th Edition

978-0357673034

More Books

Students also viewed these Databases questions