求调 P5587
  • 板块题目总版
  • 楼主Eason_lyx
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/15 11:33
  • 上次更新2024/9/15 14:54:22
查看原帖
求调 P5587
930718
Eason_lyx楼主2024/9/15 11:33

50pts 玄关 代码:

#include<bits/stdc++.h>
using namespace std;
string a[10005],b[10005];
int cur1,cur2;
double t,cnt;
string back(string s){
    string ret;
    ret+=s[0];
    int len=s.size();
    for(int i=1;i<len;i++){
        if(s[i]=='<'&&ret.size()!=0)ret.pop_back();
        else ret+=s[i];
    }
    return ret;
}
int check(string s,string t){
    int ret=0,len=min(s.size(),t.size());
    for(int i=0;i<len;i++){
        if(s[i]==t[i])ret++;
    }
    return ret;
}
int main(){
    while(true){
        getline(cin,a[cur1+1]);
        if(a[cur1+1]!="EOF")cur1++;
        if(a[cur1+1]=="EOF") break;
        a[cur1]=back(a[cur1]);
    }
    while(true){
        getline(cin,b[cur2+1]);
        if(b[cur2+1]!="EOF")cur2++;
        if(b[cur2+1]=="EOF") break;
        b[cur2]=back(b[cur2]);
        //cout<<b[cur2]<<endl;
    }
    for(int i=1;i<=cur1;i++){
        cnt+=check(a[i],b[i]);
    }
    cin>>t;
    printf("%.0lf",cnt/(t/60));
    return 0;
}
2024/9/15 11:33
加载中...