function L = lo_initialize_solvable ( push )

%*****************************************************************************80
%
%% lo_initialize_solvable() choose a random solvalble initial state. status.
%
%  Discussion:
%
%    A random configuration of lights might not be solvable.
%
%    This function produces a solvable problem by starting with a blank
%    screen and pressing a random light K times.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    11 November 2024
%
%  Author:
%
%    John Burkardt
%
%  Input:
%
%    integer push: the number of times a random light should be pushed.
%
%  Output:
%
%    logical L(M,N), true where lights are on.
%
  m = 5;
  n = 5;
  L = zeros ( m, n );

  for step = 1 : push
    i = randi ( [ 1, m ] );
    j = randi ( [ 1, n ] );
    L = lo_update ( L, i, j );
  end

  return
end

