あれは単純に、制限時間内に出題者の想定した解き方を思い付けるかどうかという遊びであって、プログラミングの技術ではありません。
競技プログラミングで求められるのは、単に「競技プログラミングの問題にしやすいごく一部のアルゴリズム」のひらめきです。
一方、現実のソフトウェア開発には、モジュール設計、ミドルウェア、OS、ハードウェア等の広範な知識が求められます。
また、アルゴリズムを学ぶなら、アルゴリズムの本を読めばよいのであって、わざわざ競技プログラミングを通じて学ぶ必要はありません。
喩えるなら競技プログラミングとは、「数学コンテスト」と銘打ちながら、ただの単純計算問題しか出していないようなものです。
それも「19 * 21 = (20-1)(20+1) = 400-1 = 399」のような、単に上手いやり方があるだけで、数学的に重要でも何でもないような問題を解く速さを競っているに過ぎません。