Submission #76666721


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

inline ll cost(ll a,ll b,ll H,ll V,ll A,ll B){
    ll H1=H+2*a,V1=V+2*b;
    ll S=H1+V1,O=(S+1)/2;
    ll h1=min(H1,O);
    ll v1=O-h1,h2=H1-h1,v2=V1-v1;
    return A*(h1+v2)+B*(v1+h2);
}

signed main(){
    int T;
    scanf("%d",&T);
    while(T--){
        ll A,B,X,Y;
        scanf("%lld%lld%lld%lld",&A,&B,&X,&Y);
        ll dx=abs(X),dy=abs(Y);
        if(A>B){ swap(A,B); swap(dx,dy); }
        ll H=dx,V=dy;
        ll base=(H+V+1)/2;
        ll C=base-H;
        ll ans=cost(0,0,H,V,A,B);
        ll b0=max(0LL,-C);
        ans=min(ans,cost(0,b0,H,V,A,B));
        ll a0=max(0LL,C);
        ans=min(ans,cost(a0,0,H,V,A,B));
        if(C<=-1){
            ll b1=-C-1;
            ans=min(ans,cost(0,b1,H,V,A,B));
        }
        ll a1=max(0LL,C+1);
        ans=min(ans,cost(a1,0,H,V,A,B));
        printf("%lld\n",ans);
    }
    return 0;
}

Submission Info

Submission Time
Task E - Alternating Costs
User Chen_Zhen_DY
Language C++23 (GCC 15.2.0)
Score 450
Code Size 955 Byte
Status AC
Exec Time 62 ms
Memory 4520 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 450 / 450
Status
AC × 1
AC × 33
Set Name Test Cases
Sample 00_sample_00.txt
All 00_sample_00.txt, 01_handmade_00.txt, 01_handmade_01.txt, 01_handmade_02.txt, 01_handmade_03.txt, 01_handmade_04.txt, 01_handmade_05.txt, 01_handmade_06.txt, 01_handmade_07.txt, 01_handmade_08.txt, 01_handmade_09.txt, 01_handmade_10.txt, 01_handmade_11.txt, 01_handmade_12.txt, 01_handmade_13.txt, 01_handmade_14.txt, 01_handmade_15.txt, 02_random_00.txt, 02_random_01.txt, 02_random_02.txt, 02_random_03.txt, 02_random_04.txt, 02_random_05.txt, 02_random_06.txt, 02_random_07.txt, 02_random_08.txt, 02_random_09.txt, 02_random_10.txt, 02_random_11.txt, 02_random_12.txt, 02_random_13.txt, 02_random_14.txt, 02_random_15.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3876 KiB
01_handmade_00.txt AC 36 ms 3700 KiB
01_handmade_01.txt AC 37 ms 3752 KiB
01_handmade_02.txt AC 36 ms 3712 KiB
01_handmade_03.txt AC 36 ms 3876 KiB
01_handmade_04.txt AC 36 ms 3768 KiB
01_handmade_05.txt AC 42 ms 3804 KiB
01_handmade_06.txt AC 41 ms 3708 KiB
01_handmade_07.txt AC 47 ms 3840 KiB
01_handmade_08.txt AC 46 ms 3840 KiB
01_handmade_09.txt AC 46 ms 3760 KiB
01_handmade_10.txt AC 45 ms 3768 KiB
01_handmade_11.txt AC 46 ms 3788 KiB
01_handmade_12.txt AC 46 ms 3840 KiB
01_handmade_13.txt AC 49 ms 3788 KiB
01_handmade_14.txt AC 49 ms 3876 KiB
01_handmade_15.txt AC 56 ms 4520 KiB
02_random_00.txt AC 61 ms 4268 KiB
02_random_01.txt AC 61 ms 4264 KiB
02_random_02.txt AC 61 ms 4268 KiB
02_random_03.txt AC 61 ms 4260 KiB
02_random_04.txt AC 54 ms 3760 KiB
02_random_05.txt AC 54 ms 3760 KiB
02_random_06.txt AC 54 ms 3768 KiB
02_random_07.txt AC 54 ms 3784 KiB
02_random_08.txt AC 59 ms 4268 KiB
02_random_09.txt AC 61 ms 4268 KiB
02_random_10.txt AC 62 ms 4264 KiB
02_random_11.txt AC 62 ms 4264 KiB
02_random_12.txt AC 61 ms 4264 KiB
02_random_13.txt AC 61 ms 4260 KiB
02_random_14.txt AC 62 ms 4272 KiB
02_random_15.txt AC 62 ms 4268 KiB