コーディング問題(アルゴリズム)とは

受験者が解答したいプログラミング言語を選択して、入力として与えられた値に対して適切な出力をする関数を実装することで、問題で与えられている要件を満たすプログラムを実装する形式の問題です。

受験者の基本的なプログラムの実装能力、データ操作やモデリングなど、アルゴリズムの実装力をはかる問題です。

難易度について

初級

条件分岐(if文)または繰り返し構文(for文など)の基本的な構造化プログラミングを扱う程度の問題。または、基本的なデータ操作(map, setなど)を必要とする問題です。

システムエンジニア、プログラマーとして仕事をする上では日常的に業務内で利用をする範囲のプログラムを実装する能力があることがわかります。

中級

ソート、グラフ問題、簡単な動的計画法、キュー、二分探索など、初級とは言えないアルゴリズムの実装力を要求する問題です。

効率的でサーバに負荷をかけないプログラムの実装能力があることがわかります。
また、データ解析、画像処理、機械学習などの応用的な分野においてもポテンシャルがあることがわかります。

上級

数理的な発想・高度なアルゴリズム・データ構造・重実装が必要になる問題です。

大規模なデータ、複雑性の高い操作を高速処理することを求められるような、計算機の処理を効率的に使用することができる応用的なエンジニアリング能力があることがわかります。

採点方法について

Unitテストを用いて、テキストまたはファイルによって与えられる入力値に対して、正しい出力をしているかどうかを判定する形式で採点を実施します。

テストは基本的な実装から、不適切な入力に対するエラー処理、特殊なエッジゲース、効率的なプログラムを実装していないと解けない大規模な入出力を期待する実装など、様々な要件によって点数化されます。


コーディング形式(実践)はこちら

回答が見つかりましたか?