competitive programming myths