Contents
  1. 1. 输入格式:
  2. 2. 输出格式:
  3. 3. 输入样例:
  4. 4. 输出样例:
  5. 5. 分析:

判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。

输入格式:

输入在第一行给出两个不超过 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

分析:

数组stu_score记录学生总分;数组score记录各题分值;数组right_ans记录正确答案;二维数组stu_ans记录学生答案用于和正确答案进行比对。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
#include<vector>
using namespace std;
int main(){
int M,N;
cin >> N >> M;
vector<int> stu_score(N),score(M),right_ans(M);
int stu_ans[N][M];
//输入分值
for (int i=0;i<M;i++) cin >> score[i];
//输入答案
for (int i=0;i<M;i++) cin >> right_ans[i];
for (int i=0;i<N;i++){
for (int j=0;j<M;j++){
cin >> stu_ans[i][j];
if (stu_ans[i][j] == right_ans[j])
stu_score[i] += score[j];
}
}
for (int i=0;i<N;i++)
cout << stu_score[i] << endl;
return 0;
}
Contents
  1. 1. 输入格式:
  2. 2. 输出格式:
  3. 3. 输入样例:
  4. 4. 输出样例:
  5. 5. 分析: