a102: A. 挑食的大胃王
標籤 : 2013國中組初賽
通過比率 : 2人/2人 ( 100% ) [非即時]
評分方式:
Strictly

最近更新 : 2023-08-04 12:37

內容

2013 網際網路程式設計全國大賽 國中組初賽

松板老師為陵櫻國小三年四班的老師,陵櫻國小原本是由中央廚房供應營養午餐給小朋友們食用,但是很不幸的,最近大地震把中央廚房震壞了,因此在廚房修復之前,松板老師必須每天訂便當讓小朋友有午餐可以吃。

訂便當並不是一件簡單的工作,因為小朋友們都非常的挑食,對於不吃的食物,小朋友會將其連同底下的部分白飯一起挖掉,如果白飯吃的不夠多,小朋友會吃不飽以至於無法專心上課,學習效果不佳,因此訂便當的首要目標就是找到可以讓大家都吃得飽的便當!

松板老師決定以班上最挑食的同時也是食量最大的大胃王阿力當作買便當的標準,如果最挑食的阿力都可以吃飽了,那麼全班也都可以吃飽。老師記錄了阿力所有不吃的食物,當她選購便當的時候,會先看看便當的表面有哪些菜,試算出阿力會吃的白飯量。

為了方便起見,老師的計算方法是先將便當切成以 1 cm × 1 cm 為單位的小格子,每個格子不是阿力會吃就是阿力不會吃。對於阿力不吃的菜,老師假設阿力會挖掉的區域為不吃的食物所存在的格子與其上下左右相連的格子,對於所有會被挖掉的區域,阿力會挖掉 3 cm 厚的白飯。示意圖如下,下圖是一個便當的表面,0 代表是阿力會吃的食物,1 代表是阿力不吃會挖掉的食物,灰色區域就是阿力所有會挖掉的區域,總共是 18 cm2 ,因此阿力總共會挖掉 18 × 3 = 54 cm3 的白飯。

 
   

 

 

 

阿力可以食用的白飯量即為白飯原本的體積減掉被挖掉的白飯體積。

因為市面上的便當琳瑯滿目,因此松板老師想請你幫忙寫個程式,協助計算各種便當小朋友可食用的白飯量是多少。

輸入說明

輸入的第一行有一個正整數 T (T 100),代表測試資料的組數。

每一組測試資料的第一行有三個正整數 M, N, K (3 M, N, K 50) 分別以空白隔開。M 代表便當的長度,N 代表便當的寬度,K 代表便當的高度。

接下來會有 M 行,每行有 N 個數字,分別以一個空白隔開,表示便當表面每一格是否是阿力會吃的食物。數字由 0 與 1 組成,0 代表是阿力會吃的食物,1 代表是阿力不吃會挖掉的食物。

輸出說明

對於每一筆測試資料請輸出一列,表示阿力可以食用的白飯量。

範例輸入
2
9 10 5
0 0 0 0 0 0 0 0 0 0
0 1 1 1 0 0 0 0 0 0
0 1 1 1 0 0 0 0 0 0
0 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 1 1
5 5 3
0 0 0 0 0
0 1 1 0 0
0 0 0 1 1
0 0 0 0 1
0 0 1 0 0
範例輸出
336
21
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1M
提示 :
標籤:
2013國中組初賽
出處:
NPSC [管理者:
zero (管理員)
]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」