42362023-03-16 21:21:28gittyGyros (30)cpp17Hibás válasz 10/304ms3324 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<b)
        {
    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ÖsszpontTesztVerdiktIdőMemória
base10/30
1Hibás válasz0/03ms1744 KiB
2Hibás válasz0/04ms1992 KiB
3Hibás válasz0/23ms2208 KiB
4Elfogadva2/23ms2412 KiB
5Elfogadva2/23ms2664 KiB
6Elfogadva3/33ms2880 KiB
7Elfogadva3/33ms3084 KiB
8Hibás válasz0/33ms3084 KiB
9Hibás válasz0/22ms3088 KiB
10Hibás válasz0/23ms3172 KiB
11Hibás válasz0/23ms3324 KiB
12Hibás válasz0/33ms3212 KiB
13Hibás válasz0/33ms3216 KiB
14Hibás válasz0/34ms3280 KiB