給定一張圖檔,每個像素分別以大寫字母表示,其出現次數最高的字母定義為"最重要的像素",而其他像素則為不重要的像素(若有不同像素出現次數一樣高,則皆視為最重要的像素),最重要的像素會被編碼成M個位元組,不重要的像素被編碼成N個位元組,請你計算一張圖檔編碼後的檔案大小。
Input
輸入一開始給定一個整數X(1 <= X <= 50)表示測試資料的組數。每組測試資料的第一列為4個整數R(1 <= R <= 20), C(1 <= C <= 20), M(1 <= M <= 10), N(1 <= N <= 10),R與C分別表示圖檔的列數與行數,M表示最重要像素的位元組數,N表示不重要像素的位元組數。接下來有R列,每列有C個字元('A'~'Z')表示圖檔的像素資訊。
Output
請針對每組測試資料,輸出一列格式為"Case x: y",其中x表示測試資料編號,y表示圖檔的位元組大小。
Sample Input Output for Sample Input
1 5 4 2 1 ABCD ABCA EFAC BCAG AZIP | Case 1: 26 |
本例中包含10種不同的像素'A', 'B', 'C', 'D', 'E', 'F', 'G', 'Z', 'I', 'P',其中'A'出現的次數最多,有6個,故'A'為最重要的像素,故檔案大小為 6*2 + 14*1 = 26位元組。
沒有留言:
張貼留言