コンピュータ専門家
修士課程サンプルテスト
申請プロセスの一環として、実際のテストを完了するように求められます。
この短いテストの目的はあなたが選んだ言語で初歩的なプログラミング問題を解決するあなたの能力を評価することです。
その言語に精通している場合は、Javaでソリューションを書いてください。 それ以外の場合は、C、C ++、またはC#のいずれかの言語を使用します。 以下の問題のそれぞれについて、あなたができる最も簡単でわかりやすい解決策を短いプログラムの形で書いてください。
サンプルテスト
- すべての要素(真ん中の要素を除く)が真ん中の要素の値より厳密に大きい場合、奇数の要素を持つ配列は中央に配置されていると言われます。 奇数の要素を持つ配列だけが中央の要素を持つことに注意してください。 整数配列を受け入れ、それが中央揃え配列であれば1を返し、そうでなければ0を返す関数を作成します。
例:
入力配列が | リターン |
{1、2、3、4、5} | 0(真ん中の要素3は、他のすべての要素より厳密に小さいわけではありません) |
{3、2、1、4、5} | 1(真ん中の要素1は他のすべての要素より厳密に小さい) |
{3、2、1、4、1} | 0(真ん中の要素1は、他のすべての要素より厳密に小さいわけではありません) |
{1、2、3、4} | 0(中間要素なし) |
{} | 0(中間要素なし) |
10 {} | 1(真ん中の要素10は他のすべての要素より厳密に小さい) |
- 引数として整数の配列を取り、配列内の偶数と奇数の合計に基づいて値を返す関数を作成します。 配列内の奇数の合計をX =、偶数の合計をY =とします。 関数はX - Yを返すべきです
関数のシグネチャは次のとおりです。
int f(int [] a)
例
入力配列が | リターン |
1 {} | 1 |
{1、2} | -1 |
{1、2、3} | 2 |
{1、2、3、4} | -2 |
{3、3、4、4} | -2 |
{3、2、3、4} | 0 |
{4、1、2、3} | -2 |
{1、1} | 2 |
{} | 0 |
- 文字配列、0から始まる開始位置、および長さを受け入れる関数を作成します。 次の文字列を含む文字配列を返します。 長さで始まる文字 start入力配列の文字 関数は開始位置と長さについてエラーチェックを行い、どちらかの値が正しくない場合はnullを返します。
関数のシグネチャは次のとおりです。
char [] f(char [] a、int start、int len)
例
入力パラメータが | リターン |
{'a'、 'b'、 'c'}、0、4 | ヌル |
{'a'、 'b'、 'c'}、0、3 | {'a'、 'b'、 'c'} |
{'a'、 'b'、 'c'}、0、2 | {'a'、 'b'} |
{'a'、 'b'、 'c'}、0、1 | {'a'} |
{'a'、 'b'、 'c'}、1、3 | ヌル |
{'a'、 'b'、 'c'}、1、2 | {'b'、 'c'} |
{'a'、 'b'、 'c'}、1、1 | {'b'} |
{'a'、 'b'、 'c'}、2、2 | ヌル |
{'a'、 'b'、 'c'}、2、1 | {'c'} |
{'a'、 'b'、 'c'}、3、1 | ヌル |
{'a'、 'b'、 'c'}、1、0 | {} |
{'a'、 'b'、 'c'}、-1、2 | ヌル |
{'a'、 'b'、 'c'}、-1、-2 | ヌル |
{}、0、1 | ヌル |
- 数値演算子を使用し、配列や他のデータ構造を使用せずに整数を反転する関数を作成します。
関数のシグネチャは次のとおりです。
int f(int n)
例
入力整数が | リターン |
1234 | 4321 |
12005 | 50021 |
1 | 1 |
1000 | 1 |
0 | 0 |
-12345 | -54321 |
- 異なる正の整数を含む2つの与えられた配列に共通のすべての要素を含む配列を返すような関数を書きなさい。 作り付けのメソッドを使うべきではありません。 配列はいくつでも使用できます。
関数のシグネチャは次のとおりです。
int [] f(int [] 1番目、int [] 2番目)
例
入力パラメータが | リターン |
{1、8、3、2}、{4、2、6、1} | {1、2} |
{1、8、3、2、6}、{2、6、1} | {2、6、1} |
{1、3、7、9}、{7、1、9、3} | {1、3、7、9} |
{1、2}、{3、4} | {} |
{}、{1、2、3} | {} |
{1、2}、{} | {} |
{1、2}、null | ヌル |
ヌル、 {} | ヌル |
null、null | ヌル |
- nが正の整数である配列Aを考えます。 A [0] + A [1] +…+ A [idx - 1]がA [idx + 1] + A [idx + 2]に等しい場合、整数idxはAのPOE(平衡点)と呼ばれます。 +…+ A [n - 1]。 もしあれば、配列のPOEを返し、そうでなければ-1を返す関数を書きます。
関数のシグネチャは次のとおりです。
int f(int [] a)
例
入力配列が | リターン |
{1、8、3、7、10、2} | 3理由:a [0] + a [1] + a [2]はa [4] + a [5]と同じです。 |
{1、5、3、1、1、1、1、1、1} | 2理由:a [0] + a [1]はa [3] + a [4] + a [5] + a [6] + a [7] + a [8]に等しい |
{2、1、1、1、2、1、7} | 5理由:a [0] + a [1] + a [2] + a [3] + a [4]はa [6]に等しい |
{1、2、3} | -1理由:POEがありません。 |
{3、4、5、10} | -1理由:POEがありません。 |
{1、2、10、3、4} | -1理由:POEがありません。 |
Note: お読みください 一般的なプログラミングエラーのリスト 生徒たちが私たちのテストにコミットしたこと。