新卒採用サイトはこちら
キーウォーカーでは、新卒向けAI研究室の採用筆記試験としてプログラミング問題を課しています。
以前は採用に必須でしたが、現在は参考扱いになります。
参考のため、過去の試験問題を掲載します。
アナウンス
- 所要時間の15分間以内に下記プログラミング課題を解いてください。
- 試験中、インターネットは利用しないでください。
- 関数やクラスについても極力基本的なステートメントで記述してください。単語の綴りの間違い等は減点対象にはなりません。
- 複数の回答パターンを思いついた場合は、複数の回答を記述してください。 加点対象になります。
では、用紙を表にして名前を記述し、試験をスタートしてください。
/**
* Java言語プログラミング試験問題
*
* 与えられた小銭の一覧から、小銭の数が最小になるように両替をする
* プログラムを書いてください。
* 所要時間:15分
**/
class Coin {
/**
* 小銭の一覧です。
*/
public static final int[] COINS = new int[] {1, 5, 10, 50, 100, 500};
/**
* 小銭を両替します。
*
* numbersにはそれぞれ1円、5円、10円、50円、100円、500円の数が入ります。
* これを、コインの総数が最小になるように両替します。
*
* @param numbers それぞれのコインの数の配列
*
*/
public void change(int[] numbers) {
// ここのコードを書いてください。
}
/**
* 出力用メソッド
*/
public void print(int[] numbers) {
for (int i = numbers.length - 1; i >= 0; --i) {
System.out.printf("%5d => %d\n", COINS[i], numbers[i]);
}
}
/**
* メイン部分
*/
public static void main(String[] args) {
Coin coin = new Coin();
int[] x = new int[] {3,5,6,1,5,1};
coin.change(x);
coin.print(x);
}
}