What will be the output of the following C++ code?
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
void Display(const vector<int>& vi)
{
for (size_t i = 0; i < vi.size(); ++i)
cout << vi[i];
cout<<endl;
}
int main()
{
vector<int> vi;
vi.push_back(3);
vi.push_back(5);
sort(vi.begin(), vi.end());
Display(vi);
while(next_permutation(vi.begin(), vi.end()))
Display(vi);
return 0;
}
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
void Display(const vector<int>& vi)
{
for (size_t i = 0; i < vi.size(); ++i)
cout << vi[i];
cout<<endl;
}
int main()
{
vector<int> vi;
vi.push_back(3);
vi.push_back(5);
sort(vi.begin(), vi.end());
Display(vi);
while(next_permutation(vi.begin(), vi.end()))
Display(vi);
return 0;
}A. 3 5
B. 5 3
C. 5 3
3 5
D. 3 3
Answer: Option C
Solution (By Examveda Team)
The C++ code uses the STL functions sort() and next_permutation() to display permutations of a vector.Initially, the vector vi contains two elements: 3 and 5.
The sort(vi.begin(), vi.end()) function arranges the elements in ascending order, so the first output will be 3 5.
Then, the next_permutation() function rearranges the vector to the next lexicographical permutation, which will be 5 3, and it is displayed after sorting.
After this, there are no more permutations, so the loop terminates.
Thus, the output will be: 5 3 3 5.
Join The Discussion
Comments (1)
What does the 'sizeof' operator return in C++?
A. Size of a data type in bits
B. Size of a data type in bytes
C. Size of a variable in bytes
D. Size of a variable in bits
What is the purpose of the 'static' keyword in C++?
A. To declare a variable with dynamic storage duration
B. To declare a constant
C. To declare a variable with external linkage
D. To declare a variable with static storage duration
What is the difference between '++i' and 'i++' in C++?
A. None of the above
B. They both have the same effect
C. '++i' increments the value of 'i' before returning it, while 'i++' increments the value of 'i' after returning it
D. '++i' increments the value of 'i' after returning it, while 'i++' increments the value of 'i' before returning it

Answer will be -
35
53