QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#196281 | #6895. a-b Problem | Royo# | AC ✓ | 88ms | 4780kb | C++20 | 654b | 2023-10-01 15:03:22 | 2023-10-01 15:03:22 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
struct Node{
int sum;
int a,b;
} node[N];
int n,t;
bool cmp(Node x,Node y)
{
if(x.sum!=y.sum) return x.sum>y.sum;
else return x.a>y.a;
}
int main()
{
cin>>t;
while(t--)
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d%d",&node[i].a,&node[i].b);
node[i].sum=node[i].a+node[i].b;
}
sort(node+1,node+1+n,cmp);
long long ans=0;
int flag=1;
for(int i=1;i<=n;i++)
{
if(flag==1)
{
ans+=node[i].a;
}
else
{
ans-=node[i].b;
}
flag*=-1;
}
printf("%lld\n",ans);
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 88ms
memory: 4780kb
input:
20 3 0 2 1 2 3 3 3 1 0 2 3 0 4 4 2 8 1 14 10 2 10 6 2 1 3 3 4 2 4 8 6 2 2 0 0 10 10 2 5 0 2 1 2 4 5 6 2 3 4 2 10 9 3 8 3 6 1 3 4 4 0 3 10 3 7 3 2 10 3 1 9 8 1 0 0 4 1 2 15 8 11 8 10 2 4 9 3 5 14 10 5 2 12 4 7 6 7 6 12 11 2 15 100000 3 1 10 8 1 8 7 9 3 6 9 2 0 7 1 3 7 1 2 0 10 9 2 5 0 3 6 1 9 0 1 1 1...
output:
1 -1 -2 0 2 10 4 2 6 6 7 0 15 -1 -2 -697 -24972584309703 24978641064563 42097360102 -61290555356
result:
ok 20 lines