Adjacency Love Solution || Codechef March Lunchtime 2022

        

Adjacency Love Solution 

Codechef March Lunchtime 2022
Problem Code : ADJLOVE

Solution :

#include <bits/stdc++.h>
#define ll long long int
#define ull unsigned long long int
using namespace std;

void solve()
{
    ll n;
    cin >> n;
    vector<ll> odd, even;
    for (ll i = 0; i < n; i++)
    {
        ll temp;
        cin >> temp;
        if (temp % 2)
        {
            odd.push_back(temp);
        }
        else
        {
            even.push_back(temp);
        }
    }
    ll od = odd.size(), ev = even.size();
    if (od == 0 || od == 1)
    {
        cout << "-1\n";
    }
    else if (ev == 0)
    {
        if (od % 2)
        {
            cout << -1 << "\n";
        }
        else
        {
            for (ll i = 0; i < od; i++)
            {
                cout << odd[i] << " ";
            }
            cout << "\n";
        }
    }
    else
    {
        if (od % 2 == 0)
        {
            for (ll i = 0; i < od; i++)
            {
                cout << odd[i] << " ";
            }
            for (ll i = 0; i < ev; i++)
            {
                cout << even[i] << " ";
            }
            cout << "\n";
        }
        else
        {
            cout << odd[0] << " ";
            for (ll i = 0; i < ev; i++)
            {
                cout << even[i] << " ";
            }
            for (ll i = 1; i < od; i++)
            {
                cout << odd[i] << " ";
            }
            cout << "\n";
        }
    }
}

int main()
{
    ll t;
    cin >> t;
    while (t--)
    {
        solve();
    }
}

Comments