    #include <iostream>
    #include <algorithm>
    
    int main()
    {
    	int arr[] = {4, 7, 3, 5, 6, 2, 9, 1, 10, 8};
    
    	for(int value: arr)
    		std::cout << value << ' ';
    	std::cout << std::endl;
    
    	std::stable_partition(arr, arr+10, [&arr](int a){ return (a < arr[0]); });
    
    	for(int value: arr)
    		std::cout << value << ' ';
    	std::cout << std::endl;
    
    	return 0;
    }