Here is one solution to this problem. We start by selecting one of the convicts to be the "Counter". The Counter is going to receive a message from each of the other convicts, stating "I've been here". The message is in the form of the light bulb being on.
If, by chance, the Counter goes into the room on the very first day of the challenge, and the light is on, he turns it off, and knows it was a false signal (the warden must have set it). But thereafter, every time he goes into the room and sees the light on, it is guaranteed to be a message from a convict. The Counter turns the light back off, and increases his count by 1. When he reaches 99, he knows all the other convicts have been in the room, and of course, so has he, so he makes the announcement.
Now how do the 99 other convicts guarantee that they send a message to the Counter? Simple. Each convict expects to walk into the room many times. Most times, they do nothing. But the very first time that they walk in and see the light off, they turn it on. That's enough to send a message to the Counter. Of course, whoever walks into the room the first day has to realize that if the light is on, that's meaningless, so they can leave it on, but this counts as them sending their message.
Back to The Convicts and the Lightbulb Puzzle.