paiza times

paizaがお届けする、テック・キャリア・マネジメント領域における「今必要な情報」を届けるWebメディア

logo

paizaがお届けする、テック・キャリア・マネジメント領域の「今必要な情報」を届けるWebメディア

最大81,300円分のAmazonギフトカード当たる!paizaの日(8/13)キャンペーン

20230725184913

今年も「paizaの日」(8/13)にちなんでキャンペーンを実施します!

paizaのスキルチェックでキャンペーン対象問題を解くと、抽選で最大81,300円分のAmazonギフトカードが当たります。キャンペーンは本日から8/13(日)までです。

今回の対象問題は、プログラミングの基礎を理解していれば解けるため、プログラミング初心者の方もぜひチャレンジしてみてください。(あらかじめpaizaへの無料会員登録が必要です)

この記事ではキャンペーンの詳細と、初めてpaizaのスキルチェックに挑戦する方に対象問題と同等の問題の解き方を解説します。

キャンペーン概要

※キャンペーンは終了しました。

実施期間

2023/08/01(火) ~ 08/13(日) 23:59

応募条件

キャンペーン対象問題「D254:砲丸投げ」に挑戦・コードを提出し、結果をツイートしてください。

プレゼント内容

以下のAmazonギフトカードを抽選でプレゼントします!

  • 81,300円分×1名様
  • 10,000円分×20名様
  • 2,000円分×79名様

※当選者の発表は、9月初旬をめどにpaizaにご登録のメールアドレス宛への発送をもって代えさせていただきます。当落に関するお問い合わせはご遠慮ください。

paizaのスキルチェックとは

スキルチェックとは、難易度によってS・A・B・C・Dランクに分かれているプログラミング問題を制限時間内に解き、結果によってS・A・B・C・D・Eの6段階のランクを取得できるサービスです。

取得したランクは、paizaが運営する就活・転職サービスで求人に応募する際に利用*1できます。

今回のキャンペーン対象となっている問題は、もっとも易しいDランク問題ですが、ITエンジニアを目指す方は、「実用的な実装スキル」と定義しているBランクの取得を目指してみてください。応募可能な求人数が増えるのはもちろん、人気の高い自社サービス企業からスカウトが届く可能性も高くなります。

ランクのレベル感は以下の通りです。言語は現在、Java、PHP、Ruby、Python、Perl、C、C++、C#、JavaScript、Objective-C、Scala、Go、Swift、Kotlinに対応しています。

公開している問題は350問以上!気軽にチャレンジしてみてください。

paizaのスキルチェック

スキルチェックのDランク問題に挑戦しよう

スキルチェックの結果は、paizaの就職・転職サービスで求人応募に利用するため、問題の公開や共有は不可とさせていただいています。

そのためここからはスキルチェックと同じ形式で問題を解く練習ができる「レベルアップ問題集」を使って、キャンペーン対象問題と同じDランク相当の問題の解き方をお伝えしていきます。

スキルチェックおよび問題集はさまざまな言語で挑戦可能ですが、この記事ではPython3で解説していきます。

引き算・掛け算(Dランク相当)

問題文

整数 A, B が与えられます。A と B の差 D と積 P を半角スペース区切りで出力してください。

Dランクレベルアップメニュー」で公開中の問題です。ブラウザ上でコードを書いて実行、正誤判定が出ますのでぜひ実際に解いてみてください。

入力される値

A B

入力値最終行の末尾に改行が1つ入ります。文字列は標準入力から渡されます。

期待する出力

期待する結果 D と P を半角スペース区切り一行で出力してください。末尾に改行を入れ、余計な文字、空行を含んではいけません。

D P

条件

すべてのテストケースにおいて、以下の条件を満たします。

A, B は整数
A, B は 0 以上 1,000 未満

解き方

標準入力と標準出力

問題文の「A と B の差 D」は引き算、「A と B の積 P」は掛け算で求められることがわかります。

その A と B は決まった値ではなく、条件の範囲内で任意に与えられます。そのため「与えられた値を受け取る」という処理が必要になります。これが「標準入力」と言われるものです。

標準入力については、paizaラーニングの動画講座「Python体験編」(全編無料)のチャプター9「標準入力と標準出力」で説明しています。標準入力にあまり馴染みのない方は、ぜひこちらをご覧ください。

入力例1を見てみると、

397 646

となっており、入力された結果が、出力例1

-249 256462

となれば正解です。

入力例1でいうと、A は397、B は646ですね。この値は、一行で半角スペース区切りで渡されるようです。

標準入力から値を受け取るコードはひとつだけではないので、書き方はいくつかあります。まずはシンプルな方法で受け取ってみましょう。

num = input().split()

numという変数に値を格納しました。numの中身がどうなっているかprint関数で見てみます。Python3ではこれが標準出力と言われるものです。

print(num)

# ['397', '646']

入力例1の値が入っているようです。numはリストとして機能していて、値をひとつひとつ取り出すには

print(num[0])
print(num[1])

# 397
# 646

このようにリストのインデックスを指定してやる必要があります。ただ、実はこのままでは数値になっていないため、足し算をしようとすると以下のような結果になってしまいます。

print(num[0] + num[1])

# 397646

そう文字列として格納されているのです。それぞれを数値(int型)に変換してもいいのですが、ここではもう少しスマートな標準入力の受け取り方をお伝えします。

A,B=(int(x) for x in input().split())

print(A)
print(B)

# 397
# 646

足し算をしてみると、数値で取得できていることがわかります。

A,B=(int(x) for x in input().split())

print(A + B)

# 1043

ちなみに、このような書き方を内包表記と言います。動画講座「新・Python入門編」のレッスン15「標準入力を理解しよう」で詳しく解説していますのでぜひご覧ください。

レベルアップ問題集「標準入力サンプル問題セット」では、標準入力の基本パターンの練習問題を解くことが可能です。眺めるだけでなく、実際にコードを書いて身につけていきましょう!

引き算と掛け算

渡される値の受け取り方がわかったので、問題に戻って、「A と B の差 D と積 P」を求めましょう。

さきほど書いたようにprint関数内で計算してもいいのですが、問題文に沿ってこうしてみました。

A,B=(int(x) for x in input().split())

D = A - B
P = A * B

print(D)
print(P)

出力結果は以下のとおりです。

# -249
# 256462

合っているように見えますが……。期待する出力は「-249 256462」のため誤りです。半角スペースをはさみ、一行で表示しなければなりません。

A,B=(int(x) for x in input().split())

D = A - B
P = A * B

print(D, P)

Python3ではこのように「,」区切りで複数の値を一行に出力させることができます。半角スペースは自動で挿入されます。

# -249 256462

これで期待する出力と同じになりました。

paizaのエディタには「提出前動作確認」というボタンがあるので確認してから提出するようにしましょう。

提出をすると無事に100点が取れました!

問題集には解答例・解説を閲覧できる問題が多数あります。解けた場合でもより効率のよいコードの書き方を学べますので、必要に応じて参照してみてください。

もちろんDランク問題は四則演算の問題ばかりではなく、文字列などの問題もありますが、まず値を受け取ることができれば大丈夫かと思います。

Dランクレベルアップメニュー」をはじめ、「レベルアップ問題集」では、他にもDランク相当の問題を多数公開しています。ぜひご活用ください。

まとめ

「paizaの日」キャンペーンのご案内と問題の解き方についてお伝えしてきました。

プログラミング初心者の方も「スキルチェック入門編」や「レベルアップ問題集」でどのような難易度・内容なのか雰囲気を掴んで、ぜひプログラミング問題に挑戦してみてください。

paizaには無料のコンテンツも多数ありますので、ご自分に合うものを見つけて活用していただければと思います。ぜひキャンペーンにもご参加ください!

20230726185725





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

*1:paizaはITエンジニア専門の就活・転職サービスです。公開している求人には、企業が求めるレベルに応じて「応募可能ランク」が設定されています。書類や言葉ではなく、「問題を解いて獲得したランク」は、プログラミングスキルや経験の証明にもなります。

paizaのおすすめコンテンツ

PPG proken プログラミングゲーム「初恋 プログラミング研究会〜海に行こうよ〜」 PPG Bingo プログラミングゲーム「コードレビューBINGO!!」
paiza転職 paiza新卒 EN:TRY paizaラーニング 記事内に記載している情報は、記事公開時点でのものとなります。 Copyright Paiza, Inc, All rights reserved.