心得:
这一题核心思路和多选题差不多,而且提取答案和判断是否正确更加简单一些,这两个题目可以归为一类
题目:
判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。
输入格式:
输入在第一行给出两个不超过 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
思路:
整体做法和前面那个多选题一样 ,此处就不在赘述了
代码:
#include<iostream>
using namespace std;
int main()
{
int stu_num,ques_num;
cin>>stu_num>>ques_num;
int score[ques_num]={};
int ans[ques_num]={};
for(int i=0;i<ques_num;i++)
cin>>score[i];
for(int i=0;i<ques_num;i++)
cin>>ans[i];
for(int i=0;i<stu_num;i++)
{
int this_stu_score=0;
for(int j=0;j<ques_num;j++)
{
int this_q_ans;
cin>>this_q_ans;
if(this_q_ans==ans[j])
this_stu_score+=score[j];
}
cout<<this_stu_score<<endl;
}
return 0;
}