1. 程式人生 > 實用技巧 >1061 判斷題 (15分)

1061 判斷題 (15分)

題目

判斷題的評判很簡單,本題就要求你寫個簡單的程式幫助老師判題並統計學生們判斷題的得分。

輸入格式

輸入在第一行給出兩個不超過 100 的正整數 N 和 M,分別是學生人數和判斷題數量。第二行給出 M 個不超過 5 的正整數,是每道題的滿分值。第三行給出每道題對應的正確答案,0 代表“非”,1 代表“是”。隨後 N 行,每行給出一個學生的解答。數字間均以空格分隔。

輸出格式

按照輸入的順序輸出每個學生的得分,每個分數佔一行。

輸入樣例

3 6
2 1 3 3 4 5
0 0 1 0 1 1
0 1 1 0 0 1
1 0 1 0 1 0
1 1 0 0 1 1

輸出樣例

13
11
12

解析

  每題分數儲存在score,正確答案儲存在answer,每題分數與答案位置一一對應,當輸入某同學i題的選項時,與answer[i]比較,相等則學生加分score[i],然後輸出,每個同學開始前要將總分置0

答案

#include<iostream>
#include<math.h>
#include<stdio.h>
#include<algorithm>

using namespace std;
int score[101];
int answer[101];
int main(){
    int N,M,a,sum;

    cin >> N >> M;
    for(int i = 0 ; i < M ; i ++){
        cin >> score[i];
    }
    for(int i = 0 ; i < M ; i ++){
        cin >> answer[i];
    }

    for(int i = 0 ; i < N ; i ++ ){
        sum = 0;
        for(int i = 0 ; i < M ; i ++ ){
            cin >> a;
            if(a == answer[i]) sum += score[i];
        }
        cout << sum <<endl;
    }
}