こんにちは。倉内です。
paizaでは、定期的にプログラミング問題に挑戦していただくと、抽選等でプレゼントをお送りするキャンペーンを実施しています。
スキルチェックで現在より上のランクの問題(難しい問題)に挑戦という条件の場合、「少しハードルが高いかも……」と思っている方もいらっしゃるかもしれません。
そこで本記事では、paizaラーニングの講座や問題集を使って力をつけ、難度の高い問題に挑戦するための方法をご紹介します。プログラミング初心者の方も、中級者の方も、ぜひチャレンジしてみてください。
paizaのスキルチェックのレベル感
スキルチェックの問題は、難易度によってS・A・B・C・Dランクに分かれています。そして、問題を解いた結果によってS・A・B・C・D・Eの6段階のランクを取得できます。
ランクのレベル感は以下の通りです。言語はJava、PHP、Ruby、Python、Perl、C、C++、C#、JavaScript、Objective-C、Scala、Go、Swift、Kotlinに対応しています。
問題は多数ありますので、上位ランクの問題にも気軽にチャレンジしてみてください。ちなみに10月12日(木)からは4週連続でBランク問題を新規出題しています!
【終了】キャンペーン概要
実施期間
2022年10月13日(木)~10月27日(木) 11:59まで
応募条件
1.現在Aランク以下の方:上位ランクの問題に挑戦する
現在Sランクの方:解いたことがない問題に挑戦する
(正解できなくてもOK!)
2.問題を解いたあとの受験結果ページからツイートをする
プレゼント内容
抽選で20名様にAmazonギフト券2,000円分
※paizaにご登録(無料)いただいたメールアドレス宛に当選者に対してのみご連絡いたします。当選はメールでのご連絡をもって代えさせていただきます。
詳しくはこちらの「キャンペーン詳細・規約」もごらんください。
レベル別「ひとつ上」を目指すための学習方法
paizaに登録していただくと、まずはFランクからのスタートです。
プログラミングが初めてという方は、まずはログイン後マイページなどに表示されているチュートリアル(基本となる標準入力・出力)にチャレンジしてみてください。
すでにプログラミングの経験がある方は、スキルチェックで実際の問題に挑戦していただくか(問題一覧はこちら)、練習問題を集めた「レベルアップ問題集」を活用していただくのもおすすめです。
Dランク問題に挑戦
四則演算や単純なfor文・if文が書ける方は、Dランク問題に挑戦してみましょう。
たとえば、以下はDランク相当の練習問題です。(以降同様に問題ページには、入力値や条件などを記載しています)
満員電車の乗車率(Dランク相当)
一般的な通勤電車では、一両辺りの乗車定員は140人ほどと言われています。
一両に乗車した人数が入力として与えられるので、一両辺りの乗車定員を140人としたときの乗車率を出力してください。ただし、乗車率(%)は以下で求めることができます。
(乗車人数)/(乗車定員)× 100
もし難しいなと思った場合は、paizaラーニングで公開している言語別の「体験編」「入門編」講座を受講してから再挑戦してみてください。
Cランク問題に挑戦
もう少し複雑なfor文・if文、配列の基本的な扱い方が分かる方は、Cランク問題に挑戦してみましょう。
たとえば、以下はCランク相当の練習問題です。
積の最小化(Cランク相当)
-1,000 ≦ A ≦ B ≦ 1,000 を満たす 2 つの整数 A, B が与えられます。A 以上 B 以下である 2 つの整数 X, Y を適当に選んだとき、X * Y の取り得る値の最小値を出力してください。なお、X と Y は同じ値でもよいものとします。
たとえば A が 3, B が 5 の場合について考えます。これは X と Y を両方とも 3 にしたときが最小で、 X * Y が 9 となります。
数値を扱う問題だけでなく、文字列や図形の問題など、多数公開していますのでご自分が解きやすい傾向などを見つけてみるのもよいでしょう。
もしCランク相当の問題が難しいと思ったときは、練習問題集の「Cランクレベルアップメニュー」を使って、簡単な問題から徐々に難しい問題に挑戦するステップを踏んでみてください。
また、paizaラーニングでは、「Cランク獲得ストーリー」を公開しています。ストーリーとは、目標ややりたいことに合わせて特定のレッスンを組み合わせたもので、その通りに学習を進めることでCランク獲得のためのスキルが身につけられるように作られています。
もっと楽しく問題を解きたい!という方は、プログラミングゲーム『エンジニアが死滅シタ世界』で出題しているCランク相当の問題解説記事もありますので覗いてみてください。
Bランク問題に挑戦
Bランクからは問題文が長くなり、条件も複雑になってくるため、まずは「何を問われているのか」「どんな前提条件があるのか」をしっかり整理して取り組む必要があります。
以下の記事では、Bランク相当の練習問題を問題文の理解や解き方の方針を立てるところから順に解説しています。初めてBランク問題に挑戦する方は参考にしてみていただければと思います。
また、レベルアップ問題集では、「Bランクレベルアップメニュー」をご用意しています。D・Cランク相当の問題を解きながら、Bランク問題を解く力をつけたい方におすすめです。
A・Sランク問題に挑戦
ここからは単に答えを導くだけではクリアが難しく、計算量を抑えることを考える必要が出てきます。
そのとき欠かせないのがアルゴリズムの知識です。paizaでは「アルゴリズム入門」「新・アルゴリズムとデータ構造入門」といった動画講座も公開していますので、まだあまりアルゴリズムに馴染みがない方はぜひごらんください。
FizzBuzz、フィボナッチ数、巡回セールスマン問題といったメジャーなアルゴリズムを学ぶことができます。
線形探索、ソート、素数判定のアルゴリズム、計算量の見積もりとO記法について学ぶことができます。
また、以下は「Aランクレベルアップメニュー」を紹介した記事です。問題の解説もおこなっていますので、参考にしてみてください。
Sランク相当の練習問題を複数公開しているのが、「リアルイベント問題セット」と「スキルチェック見本問題セット」です。
難度の高いアルゴリズムの問題が解きたいという方には、「グリッド版ダイクストラ問題セット」「巡回セールスマン問題メニュー」をご用意しています。詳しくは以下の記事もごらんください。
まとめ
プログラミング問題に挑戦してAmazonギフト券をもらえるキャンペーンのご案内と、レベル別の学習方法についてお伝えしてきました。
スキルチェックの問題は制限時間があり、特にS・A・Bランクの問題だと挑戦するのにためらう方もいらっしゃるかもしれません。ただ、問題集でどのような難易度なのか雰囲気を掴んでみると「意外といけるかも…!」と自信がわくこともあると思います。
paizaには無料のコンテンツも多数ありますので、たくさん活用していただければと思います。ぜひキャンペーンにもご参加ください!
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
詳しくはこちら
そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。
詳しくはこちら