提出 #58945119


ソースコード 拡げる

#ifndef loc
#pragma GCC optimize ("O3")
#pragma GCC optimize("Ofast")
#pragma GCC optimize ("unroll-loops")
#endif
#include <bits/stdc++.h>
#define fo(i,n) for(long long i = 0; i < n; i++)
#define foa(i,k,n) for(long long i = k; i < n; i++)
#define fob(i,k,n) for(long long i = k; i >= n; i--)
#define pb push_back
#define F first
#define S second
#define sz(x) int((x).size())
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define sortuniq(v) {sort(v.begin(), v.end()); v.erase(unique(v.begin(), v.end()), v.end());}
#define uniq(v) {v.erase(unique(v.begin(), v.end()), v.end());}
#define uid(a, b) uniform_int_distribution<int>(a, b)(rng)
using namespace std;  using ld = long double; using ll = long long; using vi = vector<int>; using vvi = vector<vi>; using vll = vector<ll>; using vvll = vector<vll>; using vb = vector<bool>; using vvb = vector<vb>; using pii = pair<int, int>; using pll = pair<ll, ll>; using vpii = vector<pii>; using vpll = vector<pll>; using arl2 = array<ll, 2>; using arl3 = array<ll, 3>; template <typename T> void ckmin(T &a, const T &b) { a = min(a, b); } template <typename T> void ckmax(T &a, const T &b) { a = max(a, b); } namespace __input {template <class T1, class T2> void re(pair<T1, T2> &p);template <class T> void re(vector<T> &a);template <class T, size_t SZ> void re(array<T, SZ> &a);template <class T> void re(T &x) { cin >> x; }void re(double &x) { string t; re(t); x = stod(t); }template <class Arg, class... Args> void re(Arg &first, Args &...rest) { re(first); re(rest...); }template <class T1, class T2> void re(pair<T1, T2> &p) { re(p.f, p.s); }template <class T> void re(vector<T> &a) { for (int i = 0; i < sz(a); i++) re(a[i]); }template <class T, size_t SZ> void re(array<T, SZ> &a) { for (int i = 0; i < SZ; i++) re(a[i]); }} using namespace __input;
namespace __output {template <typename T> struct is_outputtable { template <typename C> static constexpr decltype(declval<ostream &>() << declval<const C &>(), bool()) test(int) { return true; } template <typename C> static constexpr bool test(...) { return false; } static constexpr bool value = test<T>(int()); };template <class T, typename V = decltype(declval<const T &>().begin()), typename S = typename enable_if<!is_outputtable<T>::value, bool>::type> void pr(const T &x);template <class T, typename V = decltype(declval<ostream &>() << declval<const T &>())> void pr(const T &x) { cout << x; }template <class T1, class T2> void pr(const pair<T1, T2> &x);template <class Arg, class... Args> void pr(const Arg &first, const Args &...rest) { pr(first); pr(rest...); }template <class T, bool pretty = true> void prContain(const T &x) { if (pretty) pr("{"); bool fst = 1; for (const auto &a : x) pr(!fst ? pretty ? ", " : " " : "", a), fst = 0; if (pretty) pr("}"); }template <class T> void pc(const T &x) { prContain<T, false>(x); pr("\n"); }template <class T1, class T2> void pr(const pair<T1, T2> &x) { pr("{", x.f, ", ", x.s, "}"); }template <class T, typename V, typename S> void pr(const T &x) { prContain(x); }void ps() { pr("\n"); }template <class Arg> void ps(const Arg &first) { pr(first); ps(); }template <class Arg, class... Args> void ps(const Arg &first, const Args &...rest) { pr(first, " "); ps(rest...); }} using namespace __output;
#define __pn(x) pr(#x, " = ")
#define pd(...) __pn((__VA_ARGS__)), ps(__VA_ARGS__), cout << flush
#define noo {ps("NO");return;}
#define yess {ps("YES");return;}
#define Multitests 0 //#define int long long

void solve(){
	ll n;cin>>n;
	vll a(n),b(n-1);re(a,b);
	sort(rall(a));
	multiset<ll> m;
	fo(i,n-1) m.insert(b[i]);
	ll pen=0;
	ll val=0;
	fo(i,n){
		auto it=m.lower_bound(a[i]);
		if(it==m.end()){
			pen++;
			ckmax(val,a[i]);
		}else{
			m.erase(it);
		}
	}
	if(pen>1){
		ps(-1);
	}else{
		ps(val);
	}
}

int32_t main(){
    ios_base::sync_with_stdio(0); cin.tie(0); cout << setprecision(15);
	if(Multitests){
		int t; cin >> t;  fo(i, t) solve();
	}else solve();
    return 0;
}

提出情報

提出日時
問題 C - Prepare Another Box
ユーザ blitztage
言語 C++ 20 (gcc 12.2)
得点 350
コード長 4033 Byte
結果 AC
実行時間 94 ms
メモリ 15556 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 350 / 350
結果
AC × 3
AC × 30
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 02_random2_00.txt, 02_random2_01.txt, 02_random2_02.txt, 02_random2_03.txt, 02_random2_04.txt, 02_random2_05.txt, 02_random2_06.txt, 02_random2_07.txt, 02_random2_08.txt, 02_random2_09.txt, 02_random2_10.txt, 02_random2_11.txt, 02_random2_12.txt, 02_random2_13.txt, 02_random2_14.txt, 02_random2_15.txt, 03_random3_00.txt, 03_random3_01.txt, 03_random3_02.txt, 04_handmade_00.txt, 04_handmade_01.txt, 04_handmade_02.txt, 04_handmade_03.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 1 ms 3528 KiB
00_sample_01.txt AC 1 ms 3384 KiB
00_sample_02.txt AC 1 ms 3404 KiB
01_random_00.txt AC 27 ms 7532 KiB
01_random_01.txt AC 30 ms 7804 KiB
01_random_02.txt AC 94 ms 15324 KiB
01_random_03.txt AC 87 ms 15468 KiB
02_random2_00.txt AC 80 ms 15500 KiB
02_random2_01.txt AC 82 ms 15456 KiB
02_random2_02.txt AC 79 ms 15460 KiB
02_random2_03.txt AC 83 ms 15324 KiB
02_random2_04.txt AC 80 ms 15556 KiB
02_random2_05.txt AC 82 ms 15328 KiB
02_random2_06.txt AC 80 ms 15492 KiB
02_random2_07.txt AC 84 ms 15436 KiB
02_random2_08.txt AC 80 ms 15420 KiB
02_random2_09.txt AC 83 ms 15480 KiB
02_random2_10.txt AC 80 ms 15392 KiB
02_random2_11.txt AC 84 ms 15484 KiB
02_random2_12.txt AC 81 ms 15456 KiB
02_random2_13.txt AC 82 ms 15488 KiB
02_random2_14.txt AC 80 ms 15492 KiB
02_random2_15.txt AC 82 ms 15396 KiB
03_random3_00.txt AC 80 ms 15496 KiB
03_random3_01.txt AC 80 ms 15460 KiB
03_random3_02.txt AC 82 ms 15460 KiB
04_handmade_00.txt AC 1 ms 3524 KiB
04_handmade_01.txt AC 1 ms 3476 KiB
04_handmade_02.txt AC 1 ms 3460 KiB
04_handmade_03.txt AC 63 ms 15552 KiB