このページについて
このページは、paiza ラーニング内に開設されているコンテンツ「レベルアップ問題集」で取り扱われているプログラミング課題について、独自の見解を述べたものです。
見解については、paizaラーニングの規約に基づき、許可されている範囲でのみ公開していますが、その内容については paiza とは一切関係なく、また paiza の立場を反映したものではありませんのでご注意ください。
挑戦する課題
レベルアップ問題集のCランクレベルアップメニューから「標準入出力 (paizaランク C 相当)」を取り上げます。
以下は、問題公開 Web ページからの引用です。
問題
毎年 5 月 1 日に、自分が運営している会社の社員一覧表を作成しています。表は年度ごとに更新され、社員の名前と年齢が載っています。
ところで、会社のメンバーは昨年度から全く変わらず、社員の誕生日は全員 7 月 7 日だったので、前年度の一覧表の年齢欄をそれぞれ +1 するだけで今年度の表が作れることにパイザ君は気づきました。
昨年度の一覧表が与えられるので、今年度の一覧表を出力してください。
入力される値
入力は以下のフォーマットで与えられます。
1 2 3 4 |
N s_1 a_1 ... s_N a_N |
- 1 行目には社員の数を表す整数 N が与えられ、2 行目 〜 ( N + 1) 行目の各行では、社員の名前を表す文字列 s_i とその社員の昨年度の年齢を表す整数 a_i が半角スペース区切りで与えられます(1 ≤ i ≤ N)。
期待する出力
入力された通りの順番で、社員 s_i の名前と、その社員の今年度の年齢を半角スペース区切りで N行出力してください。
1 2 3 |
s_1 (a_1 + 1) ... s_N (a_N + 1) |
考え方
執筆中
解答例
1 2 3 4 5 6 7 8 9 10 11 |
// 1行目は読み飛ばし _ = readLine()! // 二次元配列にする let sa = Array(AnyIterator { readLine() }).map{ $0.split(separator: " ").map { String($0) }} // 各要素を一つずつ出力 for s in sa { let age = Int(s[1])! + 1 print(s[0], age) } |