Menu
Coddy logo textTech

復習 - 株価管理デスク

CoddyのRジャーニー「ロジックとフロー」セクションの一部。レッスン 11/64。

challenge icon

チャレンジ

中級

process_orders(stock, orders) を完成させてください。注文を順番に処理し、それぞれについて1行を返します:

  • 商品が stock にない場合は unknown <item>
  • 数量が0の場合は out of <item>
  • それ以外の場合は sold <item> とし、数量を1減らす

注文の処理後、在庫にある各商品について、アルファベット順に1行ずつ追加します:<item>: <quantity>。

提供されたコードは、在庫を name=quantity 形式のペアとして読み込み、注文をカンマ区切りの行として読み込み、返された各行を出力します。

自分で試してみよう

process_orders <- function(stock, orders) {
  # ここにコードを書いてください
  character(0)
}

# 提供された入出力コード:そのままにしておいてください
input <- suppressWarnings(readLines(file("stdin")))
stock <- c()
for (pair in strsplit(input[1], ",")[[1]]) {
  kv <- strsplit(pair, "=")[[1]]
  stock[kv[1]] <- as.numeric(kv[2])
}
cat(process_orders(stock, strsplit(input[2], ",")[[1]]), sep = "\n")

ロジックとフローのすべてのレッスン

自分で練習してみよう: Rオンラインコンパイラ