不知道哪里出错了
查看原帖
不知道哪里出错了
327346
xiaoyu20070727楼主2020/10/7 17:49

代码如下

#include<bits/stdc++.h>
using namespace std;
int t,n,pd;
struct node
{
	long long z,id;
}a[50001];
int cmp1(node x,node y)
{
	return x.z>y.z;
}
int cmp2(node x,node y)
{
	return x.id<y.id;
}
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    freopen("1.txt","r",stdin);
    cin>>t;
    while(t--)
    {
    	cin>>n;
    	for(int i=1;i<=n;i++)
    	{
    		cin>>a[i].z;
    		a[i].id=i;
		}
		sort(a+1,a+1+n,cmp1);
		for(int i=1;i<n;i+=pd)
		{
			pd=1;
			for(int j=i+1;j<=n;j++)
			{
				if(a[i].z==a[j].z)a[j].z=-2147483659ULL,pd++;
				else break;
			}
		}
		sort(a,a+1+n,cmp2);
		for(int i=1;i<=n;i++)
		{
			if(a[i].z!=-2147483659ULL)cout<<a[i].z<<" ";
		}
		cout<<endl;
	}

    return 0;
}

上面的freopen我删除了,-2147483659后面添加ULL是因为Dec C++ 上面好像必须添加,删除了提交也没用。 本地测试是正确的,但是全是WA

2020/10/7 17:49
加载中...