こんにちは。倉内です。
paizaのプログラミングスキル評価機能を用いた受験回数が累計2000万回*1を突破しました!
皆様のプログラミング学習やスキルアップにかける思いと挑戦の現れとも言えると思います。いつもご利用いただきありがとうございます。
この記事では、動画学習講座や練習問題集を使ったプログラミングの勉強法についてお伝えします。自分のプログラミングスキルを一段引き上げたい、難しい問題にも取り組んでみたいという方は、ぜひチャレンジしてみてください。
paizaのスキルチェックとは
スキルチェックとは、難易度によってS・A・B・C・Dランクに分かれているプログラミング問題を制限時間内に解き、結果によってS・A・B・C・D・Eの6段階のランクを取得できるサービスです。
取得したランクは、paizaが運営する就活・転職サービスでの求人応募の際に利用*2できます。
ランクのレベル感は以下の通りです。言語は現在、Java、PHP、Ruby、Python、Perl、C、C++、C#、JavaScript、Objective-C、Scala、Go、Swift、Kotlinに対応しています。
問題は多数ありますので、上位ランクの問題にも気軽にチャレンジしてみてください。(11月4日時点:527問公開中)
【終了】キャンペーン概要
実施期間
2022年11月7日(月)~11月21日(月) 11:59まで
応募条件
1.現在Aランク以下の方:上位ランクの問題に挑戦する
現在Sランクの方:解いたことがない問題に挑戦する
(正解できなくてもOK!)
2.問題を解いたあとの受験結果ページからツイートをする
プレゼント内容
抽選で15名様にAmazonギフト券5,000円分をお送りします。
【Aランク以下の方へWチャンス!】
キャンペーン期間中に以下のふたつの条件に該当する方の中から、抽選で30名様にAmazonギフト券1,000円分をプレゼントします!
- 上のランクの問題を受験したがランクアップできなかった
- 同じ問題に再挑戦してスコアが上がった
例:Cランクのユーザーの場合
キャンペーン期間内にBランクの問題に挑戦する。
問題が解けずランクアップはできなかった。
期間内に解けなかったBランク問題に再挑戦しスコアが上がった。
通常の条件もWチャンスの条件も達成!
再挑戦した問題の評価結果は、ログイン後以下から確認が可能です。(どのサービスから参照しても表示内容は同じです)
※Amazonギフト券は、いずれもpaizaにご登録(無料)いただいたメールアドレス宛に当選者に対してのみご連絡いたします。当選はメールでのご連絡をもって代えさせていただきます。
※詳しくはこちらの「キャンペーン詳細・規約」もごらんください。
スコアアップを目指すには
paizaのスキルチェックの評価は、以下のとおりオンラインの採点システムにより実施されます。
問題文を読んで、与えられた課題を解決するプログラムを時間内に書いてコードを提出してください。提出されたコードは、オンライン上で10個以上のテストケースにより即座にチェック。すぐに採点されます。
採点後、受験した問題のランクと点数に基づき、 テスト結果はS〜Eの6段階で評価されます。
ただし、出題されるプログラミング問題に「正解する」だけでは満点のスコア(100点)が得られないことがあります。それは、採点時に解答までにかかった時間も見ているからです。
特に高ランク(S・A・Bランク)の問題では、問題の理解からロジックの組み立て、実際にコードを書いてテストをし、提出するまでに時間を要するとなかなか高得点が得られないこともあるため、まずは目的とするランクの問題に慣れることも大切です。
とはいえ「スキルチェック問題は1度しか受験できないし……」と思っている方もいますよね。
たしかにランクアップの挑戦は1度ですが、再挑戦は何度でも可能ですし、これから紹介する動画講座や問題集でスキルチェックと同等の問題を練習で解くことも可能になっています。ぜひチェックしてみてください。
動画講座「スキルチェック入門編」を活用する
paizaラーニングで公開している「スキルチェック入門編」(全編無料)は、B~Dランク相当のスキルチェック類似問題を動画で解説している講座です。問題文の理解の仕方、解答の方針の立て方から図なども用いてていねいに解説しています。
動画内解説言語は「Ruby」。スキルチェックの取り組み方とDランク相当の問題解説をしています。
動画内解説言語は「Python3」。地道に解く方法と、よりシンプルな方法、効率的な方法も合わせて解説しています。
動画内解説言語は「Python3」。Pythonで知っておくと便利な「リスト内包表記」についても解説しています。
動画内解説言語は「Java」。文章では少しややこしい問題文の内容を図解しています。
動画内解説言語は「Ruby」。地道に解く方法のほか、よりシンプルに解く方法も紹介しています。
動画内解説言語は「Java」。「コーディングの方針」チャプターで、図で何を問われているのかをしっかり理解できます。
プログラミング言語の基礎文法から学びたい方は、主要言語の「体験編」「入門編」をさきに受講していただくとスムーズです。講座一覧はこちら
「レベルアップ問題集」を活用する
これまでも問題集について、このブログでは何度か紹介してきましたが、今回はS~Cランク相当の練習問題数が多い問題集というテーマでいくつかピックアップしてご紹介します。
なお、問題の解答、テストケースや解説・解答例の参照には学習チケットが必要になる問題があります。学習チケットについて詳しくはこちらをごらんください。有料会員の場合は無制限で参照可能です。
Cランクを目指す方にオススメ
各問題セット・メニューに該当ランクの問題が何問あるかを示します。
名称 | D | C | B | A | S | 解答例のある言語 |
---|---|---|---|---|---|---|
累積和メニュー | 0 | 41 | 0 | 0 | 0 | Python3, Java |
Aランクレベルアップメニュー | 0 | 18 | 23 | 8 | 0 | Python3, Java, Ruby |
Bランクレベルアップメニュー | 46 | 15 | 1 | 0 | 0 | Python3, Java, Ruby, C++, C#, PHP*, JS* |
文字列処理メニュー | 17 | 13 | 0 | 0 | 0 | Python3, C++, COBOL, JS* |
日付セット | 2 | 13 | 6 | 2 | 0 | Python3, Ruby, C++, Java*, PHP*, C* |
Cランクレベルアップメニュー | 19 | 11 | 0 | 0 | 0 | Python3, Java, Ruby, C++, JS, COBOL, PHP* |
*がついた言語は、一部問題に解答例があることを示す。(無印は全問解答例あり)
「累積和メニュー」はCランク相当の問題が41問ともっとも多くなっています。累積和とは、一言でいうと適切な前処理をおこない、配列上の区間の総和を高速で処理できるようにする手法です。
また、「Aランクレベルアップメニュー」や「Bランクレベルアップメニュー」は、易しい問題からスタートして最終的に難度の高い問題を解けるように作られた問題集のため、Cランク相当の問題数も多くなっています。
Bランクを目指す方にオススメ
各問題セット・メニューに該当ランクの問題が何問あるかを示します。
名称 | D | C | B | A | S | 解答例のある言語 |
---|---|---|---|---|---|---|
グラフ・DFSメニュー | 2 | 6 | 30 | 1 | 0 | Python3 |
Aランクレベルアップメニュー | 0 | 18 | 23 | 8 | 0 | Python3, Java, Ruby |
DPメニュー | 0 | 2 | 19 | 0 | 0 | Python3, Java, C++ |
グラフ構造の入力メニュー | 0 | 4 | 17 | 1 | 0 | C++, C# |
線形探索メニュー応用編 | 0 | 8 | 16 | 0 | 0 | Python3, Java, C++ |
連結リストメニュー | 0 | 2 | 15 | 0 | 0 | C++ |
*がついた言語は、一部問題に解答例があることを示す。(無印は全問解答例あり)
Bランク相当の問題数が多いのは、アルゴリズムの問題集となりました。
paizaラーニングでは動画講座「アルゴリズム入門編」も公開していますので、あわせてご活用ください。
Aランクを目指す方にオススメ
各問題セット・メニューに該当ランクの問題が何問あるかを示します。
名称 | D | C | B | A | S | 解答例のある言語 |
---|---|---|---|---|---|---|
グリッド版ダイクストラ問題セット | 0 | 1 | 2 | 14 | 0 | Python3, Java |
幅優先探索・深さ優先探索メニュー | 0 | 2 | 8 | 10 | 0 | Python3, Java, C++ |
STEINS;GATE 問題セット | 3 | 5 | 3 | 8 | 0 | Python3, Java, Ruby, PHP, C++, C#, JS, C |
巡回セールスマン問題メニュー | 1 | 2 | 5 | 6 | 3 | Python3, C++ |
リアルイベント問題セット | 0 | 0 | 0 | 5 | 2 | Python3, Ruby, C++ |
二分探索メニュー | 0 | 1 | 3 | 5 | 0 | Python3, Java |
問題集の中にもリンクしていますが、「グリッド版ダイクストラ問題セット」は、全問こちらの記事で解説しています。
「STEINS;GATE 問題セット」は、paizaがSTEINS;GATEとコラボしたプログラミングゲームで出題される問題です。問題集では問題のみ公開していますが、オリジナルのシナリオとともにゲームを進めながら問題を解いてみるのもおすすめです。
Sランクを目指す方にオススメ
各問題セット・メニューに該当ランクの問題が何問あるかを示します。
名称 | D | C | B | A | S | 解答例のある言語 |
---|---|---|---|---|---|---|
巡回セールスマン問題メニュー | 1 | 2 | 5 | 6 | 3 | Python3, C++ |
リアルイベント問題セット | 0 | 0 | 0 | 5 | 2 | Python3, Ruby, C++ |
スキルチェック見本問題セット | 4 | 1 | 1 | 1 | 2 | Python3, Java, C++ |
第1回P共通テスト過去問題 | 1 | 1 | 1 | 1 | 2 | Python3, C++ |
「巡回セールスマン問題メニュー」は難度が高いため、こちらの記事に別途解説もご用意しています。
S・Aランクの問題は、プログラムの実行で正しい結果が出ることはもちろん、効率のよい処理で計算量を減らすという観点も必要になってきます。以下の講座では計算量について解説していますので参考にしてみてください。
その他の切り口で紹介している記事も参考にしてみてください。
まとめ
キャンペーンのご案内と、スコアアップを狙ったり目的のランクを取得したりするための学習方法についてお伝えしてきました。
難しい問題に挑戦する前に、動画講座「スキルチェック入門編」や練習問題集でどのような難易度・内容なのか雰囲気を掴み、練習問題に慣れてみると思ったよりスムーズにクリアできることもあります。
paizaには無料のコンテンツも多数ありますので、たくさん活用していただければと思います。ぜひキャンペーンにもご参加ください!
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら