2 条题解

  • 2
    @ 2023-11-8 21:42:45

    贪心

    #include <bits/stdc++.h>
    int main(){
        int n,s,a,b,ans=0,t=0,q[5005]; 
        std::cin>>n>>s>>a>>b; a+=b;
        for(int i=0;i<n;i++){
            std::cin>>q[t+1]>>q[t]; q[t+1]<=a?t++:0;}
        std::sort(q,q+t);
        for(int i=0;i<t&&s>=0;i++)ans++,s-=q[i];
        std::cout<<(ans<=0?0:ans-1); return 0;}
    
    • 0
      @ 2023-12-9 20:46:09
      #include<bits/stdc++.h>
      using namespace std;
      int n,s,a,b,x,y,tot,ans,c[5001];
      int main()
      {
          cin>>n>>s;
          cin>>a>>b;
          for(int i=1;i<=n;i+=1)
          {
              cin>>x>>y;
              if(x<=a+b)c[tot+=1]=y;
          }
          sort(c+1,c+tot+1);
          for(int i=1;i<=tot;i+=1)if(s>=c[i])s-=c[i],ans+=1;
          cout<<ans;
      }
      
      • 1

      信息

      ID
      556
      时间
      1000ms
      内存
      125MiB
      难度
      5
      标签
      递交数
      806
      已通过
      336
      上传者