You could just use the input list and at the start of the game and fill it with only the numbers that are given. I would also make a boolean called "solution showing" which is set to false but can be set to true by the player. Then you could add a "when drawing" event in the actor behavior for the cell that looks something like that:
IF 'solution showing' = true
draw text "get item 'id' from ' solution list' " at x and y
OTHERWISE IF "get item 'id' from 'input list' " > 0
draw text "get item 'id' from 'input list' " at x and y
So now it checks if the solution should be displayed, if yes, it draws it and stops the rest of the code. If it's not showing it checks if the player has already input something, if yes, it draws that. I am assuming 0 can't be input by the player?
Edit: If you want text to be permanent you could use "labels", but that is somewhat more complicated and you don't really need that here.