Why Competitive Programming Is Important