253462026-02-19 12:10:14ubormaciBal-jobb játékcpp17Hibás válasz 0/50160ms3736 KiB
#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")

#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;

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}

#ifdef LOCAL
    freopen("in.txt","r",stdin);
    freopen("out.txt","w",stdout);
#endif

std::lcm(ll a, ll b), std::gcd(int a, int b)

cout << fixed << setprecision(n);

set with custom ordering
set<ll, decltype(&cmp)> qu(cmp);

*/

typedef int64_t ll;

void getpoint(ll fst, ll n, ll len, vector<ll> &v) {

	for(ll i = fst-1; i > 0; i -= 2) {
		if(v[i] == -1) {
			cout << i;
			return;
		}
	}
	for(ll i = fst+1; i < len; i+=2) {
		if(v[i] == 1) {
			cout << i;
			return;
		}
	}
	for(ll i =1; i < len; i+=2) {
		if(i != fst - 1 && i != fst + 1) {
			cout << i;
			return;
		}
	}
}

void solve() {

	ll n;
	cin >> n;

	ll len = 2 * n - 1;

	vector<ll> v(len, 0);
	for(ll i = 0; i < len; i++) {
		if(i % 2 == 0) {
			cin >> v[i];
		}else{
			char h;
			cin >> h;
			if(h == 'J') {
				v[i] = 1;
			}else{
				v[i] = -1;
			}
		}
	}

	vector<ll> pref(len, 0);
	ll mn = 0;
	ll fst = 0;
	ll lst = 0;
	
	for(ll i = 2; i < len; i += 2) {
		pref[i] = pref[i-2] + v[i-1];
		if(pref[i] < mn) {
			mn = pref[i];
			fst = i;
			lst = i;
		}else if(pref[i] == mn) {
			lst = i;
		}
	}

	cerr << "\npref=" << pref;
	cerr << "\nfst=" << fst << "; lst=" << lst;

	ll res = max(v[fst], v[lst]);
	
	cout << res << "\n";
	
	ll pos = 0;
	if(res == v[fst]) {
		pos = fst;
	}else{
		pos = lst;
	}

	cerr << "\npos=" << pos;

	getpoint(pos, n, len, v);
}

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

	solve();

	return 0;
}

/*

Bevallom, erre nem magamtol jottem ra
megneztem a megoldast
https://tehetseg.inf.elte.hu/nemes/nemes_archivum.html

*/
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Hibás válasz1ms316 KiB
subtask20/4
2Hibás válasz158ms3564 KiB
3Hibás válasz158ms3632 KiB
4Hibás válasz160ms3380 KiB
5Hibás válasz158ms3572 KiB
6Hibás válasz158ms3380 KiB
7Hibás válasz158ms3380 KiB
subtask30/8
8Hibás válasz1ms500 KiB
9Hibás válasz158ms3380 KiB
10Hibás válasz158ms3380 KiB
11Hibás válasz158ms3572 KiB
12Hibás válasz158ms3380 KiB
13Hibás válasz159ms3380 KiB
14Hibás válasz160ms3396 KiB
15Hibás válasz159ms3380 KiB
16Hibás válasz158ms3380 KiB
17Hibás válasz158ms3416 KiB
18Hibás válasz158ms3536 KiB
19Hibás válasz156ms3380 KiB
20Hibás válasz158ms3380 KiB
21Hibás válasz158ms3376 KiB
22Hibás válasz160ms3544 KiB
23Hibás válasz160ms3380 KiB
24Hibás válasz157ms3380 KiB
subtask40/14
25Hibás válasz1ms500 KiB
26Hibás válasz2ms316 KiB
27Hibás válasz2ms508 KiB
28Hibás válasz1ms508 KiB
29Hibás válasz1ms316 KiB
30Hibás válasz1ms316 KiB
31Hibás válasz1ms316 KiB
32Hibás válasz1ms316 KiB
33Hibás válasz1ms316 KiB
34Hibás válasz1ms316 KiB
35Hibás válasz1ms316 KiB
36Hibás válasz1ms316 KiB
37Hibás válasz1ms316 KiB
38Hibás válasz1ms316 KiB
39Hibás válasz1ms336 KiB
40Hibás válasz1ms316 KiB
41Hibás válasz1ms316 KiB
42Hibás válasz1ms316 KiB
43Hibás válasz1ms316 KiB
44Hibás válasz1ms316 KiB
45Hibás válasz1ms316 KiB
46Hibás válasz1ms316 KiB
47Hibás válasz1ms384 KiB
48Hibás válasz1ms316 KiB
49Hibás válasz1ms316 KiB
50Hibás válasz1ms316 KiB
51Hibás válasz1ms316 KiB
52Hibás válasz1ms316 KiB
53Hibás válasz1ms316 KiB
54Hibás válasz1ms316 KiB
55Hibás válasz1ms316 KiB
56Hibás válasz1ms316 KiB
57Hibás válasz1ms324 KiB
58Hibás válasz1ms372 KiB
59Hibás válasz1ms316 KiB
60Hibás válasz1ms316 KiB
61Hibás válasz1ms508 KiB
62Hibás válasz1ms316 KiB
63Hibás válasz1ms316 KiB
64Hibás válasz1ms316 KiB
65Hibás válasz1ms316 KiB
66Hibás válasz1ms316 KiB
67Hibás válasz1ms316 KiB
68Hibás válasz1ms316 KiB
69Hibás válasz1ms316 KiB
70Hibás válasz1ms316 KiB
subtask50/24
71Hibás válasz1ms500 KiB
72Hibás válasz158ms3564 KiB
73Hibás válasz158ms3632 KiB
74Hibás válasz160ms3380 KiB
75Hibás válasz158ms3572 KiB
76Hibás válasz158ms3380 KiB
77Hibás válasz158ms3380 KiB
78Hibás válasz158ms3380 KiB
79Hibás válasz158ms3380 KiB
80Hibás válasz158ms3572 KiB
81Hibás válasz158ms3380 KiB
82Hibás válasz159ms3380 KiB
83Hibás válasz160ms3396 KiB
84Hibás válasz159ms3380 KiB
85Hibás válasz158ms3380 KiB
86Hibás válasz158ms3416 KiB
87Hibás válasz158ms3536 KiB
88Hibás válasz156ms3380 KiB
89Hibás válasz158ms3380 KiB
90Hibás válasz158ms3376 KiB
91Hibás válasz160ms3544 KiB
92Hibás válasz160ms3380 KiB
93Hibás válasz157ms3380 KiB
94Hibás válasz2ms316 KiB
95Hibás válasz2ms508 KiB
96Hibás válasz1ms508 KiB
97Hibás válasz1ms316 KiB
98Hibás válasz1ms316 KiB
99Hibás válasz1ms316 KiB
100Hibás válasz1ms316 KiB
101Hibás válasz1ms316 KiB
102Hibás válasz1ms316 KiB
103Hibás válasz1ms316 KiB
104Hibás válasz1ms316 KiB
105Hibás válasz1ms316 KiB
106Hibás válasz1ms316 KiB
107Hibás válasz1ms336 KiB
108Hibás válasz1ms316 KiB
109Hibás válasz1ms316 KiB
110Hibás válasz1ms316 KiB
111Hibás válasz1ms316 KiB
112Hibás válasz1ms316 KiB
113Hibás válasz1ms316 KiB
114Hibás válasz1ms316 KiB
115Hibás válasz1ms384 KiB
116Hibás válasz1ms316 KiB
117Hibás válasz1ms316 KiB
118Hibás válasz1ms316 KiB
119Hibás válasz1ms316 KiB
120Hibás válasz1ms316 KiB
121Hibás válasz1ms316 KiB
122Hibás válasz1ms316 KiB
123Hibás válasz1ms316 KiB
124Hibás válasz1ms316 KiB
125Hibás válasz1ms324 KiB
126Hibás válasz1ms372 KiB
127Hibás válasz1ms316 KiB
128Hibás válasz1ms316 KiB
129Hibás válasz1ms508 KiB
130Hibás válasz1ms316 KiB
131Hibás válasz1ms316 KiB
132Hibás válasz1ms316 KiB
133Hibás válasz1ms316 KiB
134Hibás válasz1ms316 KiB
135Hibás válasz1ms316 KiB
136Hibás válasz1ms316 KiB
137Hibás válasz1ms316 KiB
138Hibás válasz1ms316 KiB
139Hibás válasz156ms3536 KiB
140Hibás válasz153ms3564 KiB
141Hibás válasz155ms3380 KiB
142Hibás válasz151ms3568 KiB
143Hibás válasz151ms3380 KiB
144Hibás válasz152ms3380 KiB
145Hibás válasz157ms3736 KiB
146Hibás válasz158ms3380 KiB
147Hibás válasz158ms3376 KiB
148Hibás válasz158ms3736 KiB
149Hibás válasz158ms3380 KiB
150Hibás válasz159ms3540 KiB
151Hibás válasz155ms3380 KiB
152Hibás válasz156ms3380 KiB
153Hibás válasz155ms3564 KiB
154Hibás válasz157ms3540 KiB
155Hibás válasz159ms3380 KiB
156Hibás válasz158ms3540 KiB
157Hibás válasz153ms3380 KiB
158Hibás válasz155ms3380 KiB
159Hibás válasz155ms3580 KiB
160Hibás válasz157ms3380 KiB
161Hibás válasz158ms3380 KiB
162Hibás válasz158ms3380 KiB
163Hibás válasz158ms3380 KiB
164Hibás válasz157ms3380 KiB
165Hibás válasz158ms3564 KiB
166Hibás válasz157ms3540 KiB
167Hibás válasz158ms3380 KiB