RT,大佬们帮忙看看哪里出问题了
#include <bits/stdc++.h>
using namespace std;
vector<string> fangwen;
vector<string> dazi;
int main(){
// 定义临时字符串变量
string temp="";
// 读入范文
while(temp!="EOF"){
getline(cin,temp);
fangwen.push_back(temp);
}
fangwen.pop_back();
// 读入打字的输入
temp="";
while(temp!="EOF"){
getline(cin,temp);
dazi.push_back(temp);
}
dazi.pop_back();
// 定义一个变量用来存储行数
int line=fangwen.size();
// 定义一个变量用来存储有效输入字母
int vaildLetter=0;
// 遍历各个行
for(int i=0;i<line;i++){
// 处理退格
//cout << "现在是第" << i+1 << "行" << endl;
int tgpos=0;
while(tgpos!=-1){
tgpos=dazi[i].find('<');
//cout << "tgpos是" << tgpos << endl;
if(tgpos!=-1){
if(tgpos!=0){
//cout << "清除" << dazi[i][tgpos-1] << endl;
dazi[i].erase(tgpos-1,1);
}
//cout << "清除" << dazi[i][tgpos-1] << endl;
dazi[i].erase(tgpos-1,1);
}
}
for(int j=0;j<min(fangwen[i].length(),dazi[i].length());j++){
if(fangwen[i][j]==dazi[i][j]&&j<min(fangwen[i].length(),dazi[i].length())){
vaildLetter++;
//cout << "发现" << j << "位置相等,有效字母+1!为" << vaildLetter << endl;
}
}
}
int T;
cin >> T;
double min=T/60.0;
double KPM=vaildLetter/min;
cout << round(KPM) << endl;
return 0;
}