4235 2023. 03. 16 21:20:04 gitty Gyros (30) cpp17 Hibás válasz 10/30 4ms 4036 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
   // ifstream cin("in.txt");
    /// variables:
    int t, r, b, cs;
    cin>>t;
    int eredmeny;
    char x;
    bool v = 0;
    int dbB, dbCs, dbV;
    /// solution :
    for(int i = 0; i < t; i++)
    {
        /// file-in
        cin>>r>>cs>>b;
        dbB=0;
        dbCs=0;
        dbV = 0;
        eredmeny = 0;
        v = 0;
        /// counting:
        for(int i = 0; i < r; i++)
        {
            cin>>x;
            if(x=='B') dbB++;
            if(x=='C') dbCs++;
            if(x=='V') dbV++;
        }
        /// cases:
        if(cs%2==1 && b%2==1 && dbV>0)
        {
            eredmeny++;
            cs--;
            b--;
            dbV--;
        }
        if(cs>b)
        {
            while(cs!=b && dbCs)
            {
                cs-=2;
                dbCs--;
                eredmeny++;
            }
        }
        else
        {
            while(cs!=b && dbB)
            {
                b-=2;
                dbB--;
                eredmeny++;
            }
        }

    while(dbCs && dbB && dbV+2<cs && dbV+2<dbB)
        {
    dbB--;
    dbCs--;
    dbV+=2;
        }
        while(dbV && cs && b)
        {
            eredmeny++;
            cs--;
            b--;
            dbV--;
        }
        while(dbCs && cs)
        {
            cs-=2;
            dbCs--;
            eredmeny++;
        }
        while(dbB && b)
        {
            b-=2;
            dbB--;
            eredmeny++;
        }

   // cout<<dbCs<<" "<<cs<<endl;

//    while(dbCs && dbB )
//    {
//    dbB--;
//    dbCs--;
//    dbV+=2;
//    }
//    while(dbV && cs && b)
//    {
//    eredmeny++;
//    cs--;
//    b--;
//    dbV--;
//    }
//    //cout<<dbCs<<" "<<cs<<endl;
//    while(dbCs && cs>=2)
//    {
//        cs-=2;
//        dbCs--;
//        eredmeny++;
//    }
//  //  cout<<dbCs<<" "<<cs<<endl;
//    while(dbB && b>=2)
//    {
//        b-=2;
//        dbB--;
//        eredmeny++;
//    }
///final
    cout<<eredmeny<<endl;
    }
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 10/30
1 Hibás válasz 0/0 3ms 1876 KiB
2 Hibás válasz 0/0 4ms 2116 KiB
3 Hibás válasz 0/2 3ms 2476 KiB
4 Elfogadva 2/2 3ms 2568 KiB
5 Elfogadva 2/2 3ms 2720 KiB
6 Elfogadva 3/3 3ms 2936 KiB
7 Elfogadva 3/3 3ms 3148 KiB
8 Hibás válasz 0/3 3ms 3364 KiB
9 Hibás válasz 0/2 3ms 3720 KiB
10 Hibás válasz 0/2 3ms 3800 KiB
11 Hibás válasz 0/2 3ms 3912 KiB
12 Hibás válasz 0/3 3ms 3804 KiB
13 Hibás válasz 0/3 4ms 3832 KiB
14 Hibás válasz 0/3 4ms 4036 KiB