プログラミング学習というと、学習サイトや参考書などを使ってインプットするイメージが強いと思います。ただ、いざ自分でコードを書こうとすると「学んだはずなのに書けない……」ということがよくあります。
インプットももちろん大切ではありますが、プログラミング学習においてはアウトプットも重要になってきます。
この記事では、レベル別にスキルチェックの問題を攻略する方法などをお伝えしていきます。ぜひ連休中に取り組んでみてください。
paizaのスキルチェックとは
スキルチェックとは、難易度によってS・A・B・C・Dランクに分かれているプログラミング問題を制限時間内に解き、結果によってS・A・B・C・D・Eの6段階のランクを取得できるサービスです。
取得したランクは、paizaが運営する就活・転職サービスでの求人応募の際に利用*1できます。
特に「実用的な実装スキル」と定義しているBランクを取得していただくと、応募可能な求人数が増えるのはもちろん、人気の高い自社サービス企業からスカウトが届く可能性も高くなります。
ランクのレベル感は以下の通りです。言語は現在、Java、PHP、Ruby、Python、Perl、C、C++、C#、JavaScript、Objective-C、Scala、Go、Swift、Kotlinに対応しています。
問題は多数ありますので、ぜひ気軽にチャレンジしてみてください。
スキルチェックの取り組み方
まずはチュートリアルに挑戦!
paizaには、学習サービスのpaizaラーニングの他、paiza転職・EN:TRY・paiza新卒という転職・就活サービスがあります。
新規登録していただくと、いずれかのマイページの上部にチュートリアル問題が表示されます。
この問題をすんなり解けた方は、次はそのままスキルチェックのDランク問題に挑戦するとよいでしょう。
もしよく分からない、解けなかったという方は、次に紹介する学習講座で基礎を学んでから挑戦していただくとスムーズです。
はじめてプログラミング学習をするなら
paizaラーニングには、これからプログラミングを学ぶ方向けの学習コンテンツを多数ご用意しています。
まずプログラミング言語の基礎を学べる講座をご紹介します。
体験編として、Python3・Java・Ruby・C#・PHP・JavaScript・C・C++・Swift・Go・Kotlin・Scala・Perl(いずれも全編無料)、もう一歩踏み込んだ内容を学べる入門編はPython3・Java・Ruby・C#・PHP・JavaScript・C(Python3・Ruby・JavaScript全編無料)を公開しています。
スキルチェックでは得意な言語を選択して問題を解くことができます。
また、外部から与えられる入力値を受け取って処理する問題が多いので、各言語の標準入力の処理を知っておくとスムーズに取り組めます。言語別の動画講座はこちらからごらんください。
標準入力・標準出力のコードを書き慣れるための練習問題もありますので、合わせてご活用ください。練習問題集はこちら
さらにスキルチェックにはじめて挑戦する方に取り組み方を解説する「スキルチェック入門編1:初めてのスキルチェック」という講座もご用意しています。
ランク別学習コンテンツ
プログラミングの練習問題を集めたレベルアップ問題集とpaizaラーニングの動画講座を使って、ランク別の学習法を詳しくお伝えします。
Dランク問題を解くために
Dランク問題はプログラミングの基礎文法が分かれば解けるので、さきほど紹介した講座を受講し、標準入力・標準出力が理解できたらぜひ挑戦してみてください。問題によっては1分ほどで解けるものもあります。
どんな問題が出るかは、レベルアップ問題集の「Dランク速解きセット」を参考にしていただくとよいと思います。20問すべてDランク相当の問題となっています。
Cランク問題を解くために
Cランク以上の取得を目指す方は、過去に実際スキルチェックで公開していた問題を集めた「スキルチェック過去問題セット」の該当ランクの問題を解けるようになることを目標に学習していきましょう。
解答例があるのは、Python3・Ruby・Java・PHP ですが、解説(解法のポイント)は共通して参考にしていただけます。
まず、Cランク相当の問題は4つあり、もっとも取り組みやすいのが「野球の審判」です。
この問題を解くためには、以下のふたつのレベルアップ問題集を先に学習しておくとスムーズです。
Bランク問題を解くために
Bランクの問題がD・Cランクと大きく違うのは、問題文が長くなり条件が複雑になる点にあります。そのため練習問題を通して、ある程度の長さの文章から仕様を読み取りコードに落とすことに慣れる必要があります。
「スキルチェック過去問題セット」には、Bランク相当の問題は3つありますが、「神経衰弱」が取り組みやすいと思います。
この問題を解くためには、以下のふたつのレベルアップ問題集を先に学習しておくとスムーズです。
動画講座「スキルチェック入門編」のレッスン6では、Javaでこの問題の解説をおこなっています。問題文の整理や解答の方針からていねいに解説していますので参考にしてみてください。
S・Aランク問題を解くために
Aランクからは、ループなどを回して地道に計算させるプログラムでは大規模データがクリアできずにタイムアウトする場合があります。そのためアルゴリズムを用いて、処理を効率的におこなえるコードを書ける必要性が出てきます。
「スキルチェック過去問題セット」で公開しているAランク相当の問題は、「日別訪問者数の最大平均区間(large)」です。
この問題を解くためには、以下のふたつのレベルアップ問題集を先に学習しておくとスムーズです。
他にもアルゴリズムの問題をたくさん解いてみるのもおすすめです。レベルアップ問題集のアルゴリズム問題はこちらから挑戦していただけます。
学習講座「アルゴリズム入門」「新・アルゴリズムとデータ構造入門」も公開していますので、問題をいきなり解くのは難しいかもという方はぜひ動画をごらんください。
また、レベルアップ問題集の中でS・Aランク相当の練習問題を複数公開しているのが、「リアルイベント問題セット」と「スキルチェック見本問題セット」です。
練習問題は制限時間なしに何度でも挑戦していただけるので、上のランクの問題に挑戦する前にぜひご活用いただければと思います。
楽しく学べる「プログラミングエンタメ」もおすすめ
paizaでは、学習講座や問題集の他に、プログラミングをゲーム感覚で学べるコンテンツも公開しています。ゲームコンテンツ一覧はこちら
たとえば、最新作『異能な僕らと異常な世界』やファンタジーな世界観の『エンジニア騎士とクエリの魔女』など楽しみながらプログラミングを学べます。
D~Sランクまでさまざまなタイプの問題を解くことができますので、楽しいだけではなく、しっかり実力アップすることが可能です。
以下の記事では各ゲームコンテンツの紹介と当ブログで解答・解説を掲載した記事をまとめて紹介しています。
まとめ
難易度別(ランク別)に問題を解くための学習法についてお伝えしてきました。
プログラミング初心者の方も「スキルチェック入門編」や「レベルアップ問題集」でどのような難易度・内容なのか雰囲気を掴んで、ぜひ挑戦してみてください。
paizaには無料のコンテンツも多数ありますので、たくさん活用していただければと思います。
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら
*1:paizaはITエンジニア専門の就活・転職サービスです。公開している求人には、企業が求めるレベルに応じて「応募可能ランク」が設定されています。書類や言葉ではなく、「問題を解いて獲得したランク」は、プログラミングスキルや経験の証明にもなります。