Submission #259562

# Submission time Handle Problem Language Result Execution time Memory
259562 2020-08-08T02:33:27 Z 임성재(#5054) 역사적 조사 (JOI14_historical) C++17
5 / 100
8 ms 1280 KB
#include<bits/stdc++.h>  
using namespace std;  
  
#define fast ios::sync_with_stdio(false);cin.tie(NULL)  
#define fi first  
#define se second  
#define all(v) (v).begin(),(v).end()  
#define pb push_back  
#define eb emplace_back
#define pre(a) cout<<fixed; cout.precision(a)
#define mp make_pair
  
typedef long long ll;  
typedef pair<int,int> pii;  
typedef pair<ll,ll> pll;  
const ll INF = 1e18;
const int inf = 1e9;
const int sz = 20;

ll n, q;
ll x[100010];
ll ans[100010];
ll cnt[100010];
vector<pair<pll, ll>> qr[sz];
vector<ll> v;
multiset<ll> S;

int main() {
	fast;

	cin >> n >> q;

	v.eb(0);

	for(int i=1; i<=n; i++) {
		cin >> x[i];
		v.eb(x[i]);
	}

	sort(all(v));
	v.erase(unique(all(v)), v.end());

	for(int i=1; i<=n; i++) {
		x[i] = lower_bound(all(v), x[i]) - v.begin();
	}

	for(int i=1; i<=q; i++) {
		ll a, b;
		cin >> a >> b;

		qr[a / sz].eb(mp(b, a), i);
	}

	for(int i=0; i<sz; i++) {
		sort(all(qr[i]));
	}

	for(int i=0; i<sz; i++) {
		memset(cnt, 0, sizeof(cnt));

		S.clear();
		for(int j=0; j<=n; j++) S.insert(0);

		ll s = i * sz;
		ll e = i * sz;
		
		for(auto j : qr[i]) {
			for( ; e <= j.fi.fi; e++) {
				S.erase(- v[x[e]] * cnt[x[e]]);
				cnt[x[e]]++;
				S.insert(- v[x[e]] * cnt[x[e]]);
			}

			for(int k = s; k < j.fi.se; k++) {
				S.erase(- v[x[k]] * cnt[x[k]]);
				cnt[x[k]]--;
				S.insert(- v[x[k]] * cnt[x[k]]);
			}

			ans[j.se] = - (*S.begin());

			for(int k = s; k < j.fi.se; k++) {
				S.erase(- v[x[k]] * cnt[x[k]]);
				cnt[x[k]]++;
				S.insert(- v[x[k]] * cnt[x[k]]);
			}
		}
	}

	for(int i=1; i<=q; i++) {
		cout << ans[i] << "\n";
	}
}
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1152 KB Output is correct
2 Correct 1 ms 1152 KB Output is correct
3 Correct 2 ms 1152 KB Output is correct
4 Correct 2 ms 1152 KB Output is correct
5 Correct 2 ms 1152 KB Output is correct
6 Correct 2 ms 1152 KB Output is correct
7 Correct 2 ms 1152 KB Output is correct
8 Correct 2 ms 1152 KB Output is correct
9 Correct 2 ms 1152 KB Output is correct
10 Correct 2 ms 1152 KB Output is correct
11 Correct 2 ms 1152 KB Output is correct
12 Correct 2 ms 1152 KB Output is correct
13 Correct 2 ms 1152 KB Output is correct
14 Correct 2 ms 1152 KB Output is correct
15 Correct 2 ms 1152 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1152 KB Output is correct
2 Correct 1 ms 1152 KB Output is correct
3 Correct 2 ms 1152 KB Output is correct
4 Correct 2 ms 1152 KB Output is correct
5 Correct 2 ms 1152 KB Output is correct
6 Correct 2 ms 1152 KB Output is correct
7 Correct 2 ms 1152 KB Output is correct
8 Correct 2 ms 1152 KB Output is correct
9 Correct 2 ms 1152 KB Output is correct
10 Correct 2 ms 1152 KB Output is correct
11 Correct 2 ms 1152 KB Output is correct
12 Correct 2 ms 1152 KB Output is correct
13 Correct 2 ms 1152 KB Output is correct
14 Correct 2 ms 1152 KB Output is correct
15 Correct 2 ms 1152 KB Output is correct
16 Correct 3 ms 1152 KB Output is correct
17 Correct 4 ms 1152 KB Output is correct
18 Incorrect 8 ms 1280 KB Output isn't correct
19 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1152 KB Output is correct
2 Correct 2 ms 1152 KB Output is correct
3 Correct 2 ms 1152 KB Output is correct
4 Incorrect 3 ms 1152 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1152 KB Output is correct
2 Correct 1 ms 1152 KB Output is correct
3 Correct 2 ms 1152 KB Output is correct
4 Correct 2 ms 1152 KB Output is correct
5 Correct 2 ms 1152 KB Output is correct
6 Correct 2 ms 1152 KB Output is correct
7 Correct 2 ms 1152 KB Output is correct
8 Correct 2 ms 1152 KB Output is correct
9 Correct 2 ms 1152 KB Output is correct
10 Correct 2 ms 1152 KB Output is correct
11 Correct 2 ms 1152 KB Output is correct
12 Correct 2 ms 1152 KB Output is correct
13 Correct 2 ms 1152 KB Output is correct
14 Correct 2 ms 1152 KB Output is correct
15 Correct 2 ms 1152 KB Output is correct
16 Correct 3 ms 1152 KB Output is correct
17 Correct 4 ms 1152 KB Output is correct
18 Incorrect 8 ms 1280 KB Output isn't correct
19 Halted 0 ms 0 KB -