Question

#include using namespace std; vector split_string(string); // Complete the findMedian function below. int findMedian(vector arr) {...

#include

using namespace std;

vector split_string(string);

// Complete the findMedian function below.
int findMedian(vector arr) {


}

int main()
{
ofstream fout(getenv("OUTPUT_PATH"));

int n;
cin >> n;
cin.ignore(numeric_limits::max(), '\n');

string arr_temp_temp;
getline(cin, arr_temp_temp);

vector arr_temp = split_string(arr_temp_temp);

vector arr(n);

for (int i = 0; i < n; i++) {
int arr_item = stoi(arr_temp[i]);

arr[i] = arr_item;
}

int result = findMedian(arr);

fout << result << "\n";

fout.close();

return 0;
}

vector split_string(string input_string) {
string::iterator new_end = unique(input_string.begin(), input_string.end(), [] (const char &x, const char &y) {
return x == y and x == ' ';
});

input_string.erase(new_end, input_string.end());

while (input_string[input_string.length() - 1] == ' ') {
input_string.pop_back();
}

vector splits;
char delimiter = ' ';

size_t i = 0;
size_t pos = input_string.find(delimiter);

while (pos != string::npos) {
splits.push_back(input_string.substr(i, pos - i));

i = pos + 1;
pos = input_string.find(delimiter, i);
}

splits.push_back(input_string.substr(i, min(pos, input_string.length()) - i + 1));

return splits;
}

0 0
Add a comment Improve this question Transcribed image text
Answer #1

If you have any doubts, please give me comment...

#include <iostream>

#include <string>

#include <algorithm>

#include <vector>

#include <limits>

using namespace std;

vector<string> split_string(string);

// Complete the findMedian function below.

int findMedian(vector<int> arr)

{

int n = arr.size();

for(int i=0; i<n; i++){

for(int j=i+1; j<n; j++){

if(arr[i]>arr[j]){

int temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

if (n % 2 != 0)

return arr[n/2];

return (arr[(n-1)/2] + arr[n/2])/2;

}

int main()

{

ofstream fout(getenv("OUTPUT_PATH"));

int n;

cin >> n;

cin.ignore(numeric_limits<char>::max(), '\n');

string arr_temp_temp;

getline(cin, arr_temp_temp);

vector<string> arr_temp = split_string(arr_temp_temp);

vector<int> arr(n);

for (int i = 0; i < n; i++)

{

int arr_item = stoi(arr_temp[i]);

arr[i] = arr_item;

}

int result = findMedian(arr);

fout << result << "\n";

fout.close();

return 0;

}

vector<string> split_string(string input_string)

{

string::iterator new_end = unique(input_string.begin(), input_string.end(), [](const char &x, const char &y) {

return x == y and x == ' ';

});

input_string.erase(new_end, input_string.end());

while (input_string[input_string.length() - 1] == ' ')

{

input_string.pop_back();

}

vector<string> splits;

char delimiter = ' ';

size_t i = 0;

size_t pos = input_string.find(delimiter);

while (pos != string::npos)

{

splits.push_back(input_string.substr(i, pos - i));

i = pos + 1;

pos = input_string.find(delimiter, i);

}

splits.push_back(input_string.substr(i, min(pos, input_string.length()) - i + 1));

return splits;

}

Add a comment
Know the answer?
Add Answer to:
#include using namespace std; vector split_string(string); // Complete the findMedian function below. int findMedian(vector arr) {...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT