为什么把set<pair<int,int>> 换成set <int> 就wa了呀
查看原帖
为什么把set<pair<int,int>> 换成set <int> 就wa了呀
877860
Just_Love_You楼主2023/8/29 12:10
set<pair<int,int>> st;
    int sum=0;
    int ans=0;
    for(int i=0;i<n;i++)
    {
        int num=sum+f[i]-d*(i+1);
        ans=max(ans,num);
        if(f[i]>0)
        {
            sum+=f[i];
            st.insert(make_pair(f[i],i));
            if(st.size()>=m)
            {
                int tmp=(st.begin())->first;
                st.erase(st.begin());
                sum-=tmp;
            }
        }
    }
    //可以AC
    set<int> st;
    int sum=0;
    int ans=0;
    for(int i=0;i<n;i++)
    {
        int num=sum+f[i]-d*(i+1);
        ans=max(ans,num);
        if(f[i]>0)
        {
            sum+=f[i];
            st.insert(f[i]);
            if(st.size()>=m)
            {
                int tmp=*st.begin();
                st.erase(tmp);
                sum-=tmp;
            }
        }
    }
      // wa
2023/8/29 12:10
加载中...