239272026-01-31 21:50:06ubormaciBal-jobb játékcpp17Hibás válasz 0/50101ms3176 KiB
#include <iostream>
#include <algorithm> // for sort, mainly
#include <vector>
#include <map>
#include <set>
#include <cmath>
#include <array>
#include <string>
#include <cstdio>
#include <iterator>
#include <unordered_set>
#include <cstdint> // for int64_t, int32_t, etc
#include <queue>
#include <stack>
#include <deque>
#include <numeric> // gcd, lcm
#include <fstream>
#include <bitset> // for bitset
#include <iomanip>
#include <cassert> // for set with custom ordering
#include <type_traits> // for set with custom ordering
#include <utility> // for swap, forward, etc
using namespace std;

#pragma GCC optimize("O2")
// #pragma GCC optimize("O1","O2","O3","Ofast","unroll-loops")
//#pragma GCC target("sse","sse2","sse3","sse4.1","sse4.2","avx","avx2","fma")

template<typename A, typename B> ostream& operator<<(ostream &os, const pair<A, B> &p) { return os << '(' << p.first << ", " << p.second << ')'; }
template<typename T_container, typename T = typename enable_if<!is_same<T_container, string>::value, typename T_container::value_type>::type> ostream& operator<<(ostream &os, const T_container &v) { os << '{'; string sep; for (const T &x : v) os << sep << x, sep = ", "; return os << '}'; }
void dbg_out() { cout << endl; }
template<typename Head, typename... Tail> void dbg_out(Head H, Tail... T) { cout << ' ' << H; dbg_out(T...); }
#ifdef LOCAL
#define dbg(...) cout << "(" << #__VA_ARGS__ << "):", dbg_out(__VA_ARGS__)
#else
#define dbg(...)
#endif

/*
 *
 * notes:
 *
 * int64_t
 * stoi(string s) -> string to int
 * to_string() -> int (or else) to string
 *
 * vector declaration:
 * vector<ll> v(n, 0)
 * vector<vector<ll>> v(n, vector<ll>(n, 0));
 *
 * {if statement} ? {truth value} : {false value}
 *
 * set lower bound/upper bound:
 * 	// . . . m1 . . . d . . . . m2
 *    auto m1_it = b.lower_bound(d);
 *    advance(m1_it, -1);
 *    m1 = *m1_it;
 *	m2 = *b.upper_bound(d);
 *
 * #ifdef LOCAL
 *    freopen("in.txt","r",stdin);
 *    freopen("out.txt","w",stdout);
 * #endif
 *
 * constexpr auto lcm(auto x, auto... xs)
 * {
 *	return ((x = std::lcm(x, xs)), ...);
 * }
 *
 * std::gcd(int a, int b)
 *
 * cout << setprecision(n);
 *
 * set with custom ordering
 * set<ll, decltype(&cmp)> qu(cmp);
 *
 */

typedef int64_t ll;

void solve() {
    
    ll n;
    cin >> n;
    vector<ll> v(2 * n, 0);

    ll lastl = -1;
    ll firstr = -1;

    ll ansopt = 0;
    ll ansind = 2;

    for(ll i = 1; i <= 2 * n-1; i++) {
        if(i % 2 == 1) {
            cin >> v[i];
        }else{
            char h;
            cin >> h;
            if(h == 'B') {
                lastl = i;
            }else if(firstr == -1) {
                firstr = i;
            } 
        }
    }

    //cerr << "\nlastl=" << lastl << "; firstr=" << firstr;

    if(lastl == -1) {
        // az osszes jobb
        ansopt = v[1];
    }
    else if(firstr == -1) {
        // az osszes bal
        ansopt = v[2 * n-1];
    }else{
        // van bal is, jobb is
        
        vector<ll> fin;

        for(ll i = 1; i <= lastl; i += 2) {
            fin.push_back(v[i]);
        }
        for(ll i = max(lastl, firstr) + 1; i <= 2 * n; i += 2) {
            fin.push_back(v[i]);
        }

        cerr << "\nfin=" << fin;

        ll h = fin.size();

        sort(fin.begin(), fin.end());

        ansopt = fin[h/2];
    }

    cout << ansopt << "\n" << ansind;

}

int main()
{
    std::ios_base::sync_with_stdio(false);
    //cin.tie(nullptr);
    //cout.tie(nullptr);

    solve();

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
subtask20/4
2Hibás válasz98ms3176 KiB
3Hibás válasz98ms2992 KiB
4Hibás válasz100ms2992 KiB
5Hibás válasz97ms2996 KiB
6Elfogadva17ms2028 KiB
7Elfogadva17ms1844 KiB
subtask30/8
8Elfogadva1ms500 KiB
9Elfogadva17ms1844 KiB
10Elfogadva17ms1844 KiB
11Hibás válasz97ms3052 KiB
12Hibás válasz96ms3148 KiB
13Hibás válasz97ms2988 KiB
14Hibás válasz98ms3008 KiB
15Hibás válasz97ms2988 KiB
16Hibás válasz96ms2992 KiB
17Hibás válasz101ms2992 KiB
18Hibás válasz100ms2992 KiB
19Hibás válasz94ms2992 KiB
20Hibás válasz96ms2992 KiB
21Hibás válasz100ms2992 KiB
22Hibás válasz98ms2992 KiB
23Hibás válasz97ms2988 KiB
24Hibás válasz97ms2992 KiB
subtask40/14
25Elfogadva1ms500 KiB
26Elfogadva1ms512 KiB
27Elfogadva1ms508 KiB
28Hibás válasz1ms316 KiB
29Hibás válasz2ms316 KiB
30Hibás válasz1ms316 KiB
31Elfogadva1ms500 KiB
32Hibás válasz1ms316 KiB
33Elfogadva1ms508 KiB
34Hibás válasz1ms316 KiB
35Hibás válasz1ms316 KiB
36Hibás válasz1ms560 KiB
37Hibás válasz1ms316 KiB
38Hibás válasz1ms556 KiB
39Hibás válasz1ms316 KiB
40Hibás válasz1ms416 KiB
41Hibás válasz1ms332 KiB
42Elfogadva1ms316 KiB
43Részben helyes1ms316 KiB
44Részben helyes1ms500 KiB
45Elfogadva1ms316 KiB
46Hibás válasz1ms496 KiB
47Hibás válasz1ms508 KiB
48Hibás válasz1ms316 KiB
49Hibás válasz1ms512 KiB
50Részben helyes1ms316 KiB
51Részben helyes1ms316 KiB
52Hibás válasz1ms508 KiB
53Hibás válasz1ms316 KiB
54Elfogadva1ms508 KiB
55Elfogadva1ms316 KiB
56Hibás válasz1ms316 KiB
57Elfogadva1ms316 KiB
58Hibás válasz1ms316 KiB
59Hibás válasz1ms316 KiB
60Hibás válasz1ms316 KiB
61Hibás válasz1ms316 KiB
62Hibás válasz1ms316 KiB
63Hibás válasz1ms316 KiB
64Hibás válasz1ms316 KiB
65Hibás válasz1ms316 KiB
66Elfogadva2ms316 KiB
67Hibás válasz1ms316 KiB
68Elfogadva1ms316 KiB
69Hibás válasz1ms316 KiB
70Hibás válasz1ms316 KiB
subtask50/24
71Elfogadva1ms500 KiB
72Hibás válasz98ms3176 KiB
73Hibás válasz98ms2992 KiB
74Hibás válasz100ms2992 KiB
75Hibás válasz97ms2996 KiB
76Elfogadva17ms2028 KiB
77Elfogadva17ms1844 KiB
78Elfogadva17ms1844 KiB
79Elfogadva17ms1844 KiB
80Hibás válasz97ms3052 KiB
81Hibás válasz96ms3148 KiB
82Hibás válasz97ms2988 KiB
83Hibás válasz98ms3008 KiB
84Hibás válasz97ms2988 KiB
85Hibás válasz96ms2992 KiB
86Hibás válasz101ms2992 KiB
87Hibás válasz100ms2992 KiB
88Hibás válasz94ms2992 KiB
89Hibás válasz96ms2992 KiB
90Hibás válasz100ms2992 KiB
91Hibás válasz98ms2992 KiB
92Hibás válasz97ms2988 KiB
93Hibás válasz97ms2992 KiB
94Elfogadva1ms512 KiB
95Elfogadva1ms508 KiB
96Hibás válasz1ms316 KiB
97Hibás válasz2ms316 KiB
98Hibás válasz1ms316 KiB
99Elfogadva1ms500 KiB
100Hibás válasz1ms316 KiB
101Elfogadva1ms508 KiB
102Hibás válasz1ms316 KiB
103Hibás válasz1ms316 KiB
104Hibás válasz1ms560 KiB
105Hibás válasz1ms316 KiB
106Hibás válasz1ms556 KiB
107Hibás válasz1ms316 KiB
108Hibás válasz1ms416 KiB
109Hibás válasz1ms332 KiB
110Elfogadva1ms316 KiB
111Részben helyes1ms316 KiB
112Részben helyes1ms500 KiB
113Elfogadva1ms316 KiB
114Hibás válasz1ms496 KiB
115Hibás válasz1ms508 KiB
116Hibás válasz1ms316 KiB
117Hibás válasz1ms512 KiB
118Részben helyes1ms316 KiB
119Részben helyes1ms316 KiB
120Hibás válasz1ms508 KiB
121Hibás válasz1ms316 KiB
122Elfogadva1ms508 KiB
123Elfogadva1ms316 KiB
124Hibás válasz1ms316 KiB
125Elfogadva1ms316 KiB
126Hibás válasz1ms316 KiB
127Hibás válasz1ms316 KiB
128Hibás válasz1ms316 KiB
129Hibás válasz1ms316 KiB
130Hibás válasz1ms316 KiB
131Hibás válasz1ms316 KiB
132Hibás válasz1ms316 KiB
133Hibás válasz1ms316 KiB
134Elfogadva2ms316 KiB
135Hibás válasz1ms316 KiB
136Elfogadva1ms316 KiB
137Hibás válasz1ms316 KiB
138Hibás válasz1ms316 KiB
139Részben helyes86ms3176 KiB
140Hibás válasz86ms2992 KiB
141Hibás válasz86ms3112 KiB
142Elfogadva85ms3116 KiB
143Részben helyes86ms2992 KiB
144Hibás válasz87ms2992 KiB
145Hibás válasz98ms3148 KiB
146Hibás válasz98ms2992 KiB
147Hibás válasz100ms2992 KiB
148Hibás válasz97ms2992 KiB
149Hibás válasz98ms2992 KiB
150Hibás válasz98ms3144 KiB
151Részben helyes87ms2988 KiB
152Hibás válasz86ms2992 KiB
153Részben helyes85ms3152 KiB
154Hibás válasz101ms2992 KiB
155Hibás válasz97ms2992 KiB
156Hibás válasz98ms3008 KiB
157Részben helyes87ms3168 KiB
158Hibás válasz87ms3152 KiB
159Hibás válasz86ms2992 KiB
160Hibás válasz86ms2992 KiB
161Hibás válasz98ms3148 KiB
162Hibás válasz97ms2992 KiB
163Hibás válasz100ms3160 KiB
164Hibás válasz97ms3152 KiB
165Hibás válasz98ms3152 KiB
166Hibás válasz100ms2992 KiB
167Hibás válasz100ms2988 KiB