#include <algorithm>
#include <iostream>
#include <utility>
#include <vector>

using namespace std;

int main() {
	const vector<pair<int, int>> intervals = { { 1, 3 },{ 7, 9 },{ 13, 13 } };
	std::vector<double> values = { 4.2, 6.4, 2.3, 3.4, 9.1, 2.3, 0.6, 1.2, 0.3, 0.4, 6.4, 3.6, 1.4, 2.5, 7.5 };
	size_t write = 0U;
	auto it = cbegin(intervals);


	for (size_t read = 0U; read < values.size(); ++read) {
		if (it == cend(intervals) || read < it->first) {
			values[write++] = values[read];
		} else if (read == it->second) {
			++it;
		}
	}

	values.resize(write);

	for (const auto& i : values) cout << i << ' ';
}