代码如下
#include <cstdio>
#include <iostream>
#include <string>
using namespace std;
string fw[10000],sr; //范文、用户输入
char tmp; //用于接收读入字符的临时存储器
int t,len,cnt; //时间、范文行数、正确字符个数
void input(string &s){ //读入一行字符串
getline(cin,s);
for(int i = 0;i < s.length();i++){
if(s[i] == '<'){
if(i == 0) s.erase(i,1);
else s.erase(i-1,2);
}
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
do{
input(fw[len]);
len++; //范文行数加一
} while(fw[len-1] != "EOF"); //只要最后一行范文不为EOF就一直读入
len--; //抹掉范文最后的EOF
/*
for(int j = 0;j < len;j++){ //与范文读入相同行数
sr.clear(); //清除前一次的用户输入
input(sr);
for(int i = 0;i < fw[j].length() && i < sr.length();i++){ //逐位比对
if(fw[j][i] == sr[i]) cnt++;
}
}
*/
int j = 0;
do{
sr.clear();
input(sr);
if(j < len){
for(int i = 0;i < fw[j].length() && i < sr.length();i++){ //逐位比对
if(fw[j][i] == sr[i]) cnt++;
}
j++;
}
} while(sr != "EOF");
cin >> t;
printf("%.0lf",cnt/(double(t)/60));
return 0;
}
1~5 AC
6~10 WA
dalao 救我……