中译中:

clccle会跳过所有难题,只做简单题,如果时间不够做这道题就跳过。

rqy会尝试做难题,但是要花2倍时间,如果时间不够做这道题就跳过。

c++中使用pair存储每一题(时间,难度)

对于每一题,分别判断两人的逻辑:

clccle只判断是不是简单题,是简单题并且时间够就可以做,维护clccle当前时间和clccle做的题数。

rqy判断是难题,难题要加2倍时间,判断时间是否足够。

否则rqy判断是简单题,和clccle相同逻辑,维护rqy当前时间和rqy做的题数。

#include <iostream>
#include <utility>
#include <vector>
using namespace std;

int main() {
    long long n,t,a,b,Tc=0,Tr=0,clccle=0,rqy=0;
    cin>>n>>t>>a>>b;
    vector<pair<long long, long long>> q(n);

    for(auto &p:q) cin>>p.first;
    for(auto &p:q) cin>>p.second;

    for(auto p:q){
        if(p.second<a && p.first+Tc<=t){
            clccle++;
            Tc+=p.first;
        }
        if(p.second>=b && p.first*2+Tr<=t){
            rqy++;
            Tr+=p.first*2;
        }else if(p.second<b && p.first+Tr<=t){
            rqy++;
            Tr+=p.first;
        }
    }
    cout<<clccle<<" "<<rqy;
}