/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 532.0 KiB
#2 Accepted 1ms 536.0 KiB
#3 Accepted 1ms 500.0 KiB
#4 Accepted 1ms 352.0 KiB
#5 Accepted 34ms 532.0 KiB
#6 Accepted 19ms 532.0 KiB
#7 Accepted 45ms 2.051 MiB
#8 Accepted 112ms 2.047 MiB
#9 Accepted 102ms 2.047 MiB
#10 Accepted 99ms 2.02 MiB
#11 Accepted 50ms 560.0 KiB
#12 Accepted 42ms 532.0 KiB
#13 Accepted 63ms 2.02 MiB
#14 Accepted 99ms 2.051 MiB
#15 Accepted 54ms 532.0 KiB
#16 Accepted 51ms 588.0 KiB
#17 Accepted 59ms 536.0 KiB

Code

#include<bits/stdc++.h>
using namespace std;
#define int             long long
#define pb              push_back
#define endl            '\n'
#define debug           cout<<"HERE"<<endl;
#define ff              first
#define ss              second
void edm()
{
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
    #ifndef ONLINE_JUDGE
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    #endif
}
void solve()
{
    int n;cin>>n;
    int arr[n];
    int pos=0;
    for(int i=0;i<n;i++)
    {
        cin>>arr[i];
        if(arr[i]>0)pos++;
    }
    int ans=0;
    sort(arr,arr+n);
    if(pos==0)
    {
        ans = ans + arr[n-1];
        ans = ans - arr[n-2];
        cout<<ans<<endl;
        return;   
    }
    int now=1;
    ans = ans + arr[n-1];
    ans = ans - arr[n-2];
    for(int i=n-3;i>=0;i--)
    {
        if(arr[i]<=0)break;
        if(now)
        {
            ans = ans + arr[i];
            now=0;
        }
        else
        {
            ans = ans - arr[i];
            now=1;
        }
    }
    cout<<ans<<endl;
}
signed main()
{
    //edm();
    int t = 1;
    cin>>t;
    for(int i=1;i<=t;i++)
    {
        ///cout<<"Case "<<i<<": ";
        solve();
    }
} 

Information

Submit By
Type
Submission
Problem
P1208 C. Game on Integer
Contest
Educational Round 1
Language
C++17 (G++ 13.2.0)
Submit At
2025-07-14 16:19:04
Judged At
2025-07-14 16:19:04
Judged By
Score
100
Total Time
112ms
Peak Memory
2.051 MiB