コーディング問題
エディタの使い方、テストケース、テストと提出、エラーの読み方について。
全21記事テストは通るのに提出で不合格になります
テストは一部のテストケースだけ、提出はすべてのテストケースを実行します。境界にあたる入力で落ちていることがほとんどです。
「実行」「テスト」「提出」の違い
実行は書いたコードをそのまま動かし、テストは一部のテストケースで確かめ、提出はすべてのテストケースで合否を決めます。
タイムアウトやスタックオーバーフローになります
実行時間と再帰の深さには上限があります。計算量を減らすか、再帰を反復に置き換えてください。
エラーメッセージの読み方
—ERROR— は出力の送信に失敗したこと、undefinedは戻り値が無いことを表します。コンソールに詳細が出ます。
問題エディタの使い方
言語の切り替え、全画面表示、リセット、カスタム入力、コンソールの見方をまとめています。
エディタに何を書けばいいですか
書くのは関数の定義だけです。printやconsole.logでの呼び出しは必要ありません。
入出力のデータ型がよくわかりません
関数の入出力例に、その問題で使うデータ型と引数名が示されています。型ごとの書き方を説明します。
カスタム入力で好きな値を試したい
カスタム入力をオンにすると、自分で決めた値でテストできます。入力の形式は入出力例に合わせてください。
singlyLinkedList() やtoBinaryTree() とは何ですか
配列を連結リストや二分木に変換するために、Recursion側で用意している関数です。
対応している言語と切り替え方
C++、C#、Go、Java、JavaScript、PHP、Python、Ruby、TypeScript、SQLの10言語に対応しています。
問題によって選べる言語が違います
SQLの問題はSQLだけ、通常の問題ではSQLを選べません。問題ごとに使える言語が決まっている場合もあります。
書いたコードは保存されますか
ブラウザに保存されるため、ページを移動しても残ります。ただしブラウザのデータを消すと失われます。
書いたコードをリセットしたい
言語タブの右にあるリセットボタンで、最初のコードに戻せます。戻したコードは復元できません。
ローカルでは動くのにRecursionで通りません
Recursionのエディタは文法エラーだけを表示します。詳しいエラーはローカルのエディタのほうが親切です。
解答解説を見たい
解答解説は問題に合格したあとに開けます。問題によっては動画の解説もあります。
提出したあとにできること
コードを公開すると他のユーザーが読めるようになり、おすすめの解答例に選ばれることがあります。
提出履歴はどこで見られますか
アイコンのメニューから提出を開くと、過去のコードと採点結果を見られます。コードレビューもここから実行できます。
お気に入りに入れた問題を見たい
問題ページの旗をクリックするとお気に入りに入り、アイコンのメニューから一覧できます。
難易度の基準を教えてください
very easy、easy、medium、hardの4段階です。全体ではなく、その単元の中での難しさを表しています。
エディタで使えるショートカット
コメントアウト、行の複製と移動、複数選択など、覚えておくと速くなるものをまとめています。
Javaのクラスにある <E> は何ですか
ジェネリクスの型パラメータです。クラスを定義するときには型を決めず、使うときに決められます。