aaa64分求助
查看原帖
aaa64分求助
1711634
zengsixuan楼主2025/6/23 21:57
	#include<bits/stdc++.h>
	using namespace std;
    struct dd
    {
        int i,j;
    };
    bool camp(dd a,dd b)
    {
        if(a.i!=b.i) return a.i<b.i; 
        return a.j<b.j;
    }
	int main()
	{
		//freopen(".in","r",stdin);
		//freopen(".out","w",stdout);
        int t;
        cin>>t;
        for(int z=1;z<=t;z++)
        {
            int n;
            cin>>n;
            dd a[n+2];
            a[0].i=0;
            a[0].j=0;
            int sum[n+2]={0};
            bool f=1;
            for(int z=1;z<=n;z++)
            {
                cin>>a[z].j>>a[z].i;     
            }
            sort(a+1,a+n+1,camp);
            for(int z=1;z<=n;z++)
            {
                sum[z]=sum[z-1]+abs(a[z-1].j-a[z].j);//前缀和,接上一个金币的总时间+赶过来的时间
                if(sum[z]>a[z].i) f=0;                    
            }
            if(f) cout<<"Abletocatch"<<endl;
            else cout<<"Notabletocatch"<<endl;
        }
		return 0;
	}
2025/6/23 21:57
加载中...