Submission #593836

#TimeUsernameProblemLanguageResultExecution timeMemory
593836vladislav11Diversity (CEOI21_diversity)C++14
0 / 100
4 ms316 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; int n, q, l, r; vector<int> a; int main () { ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> q; a.resize(n); for ( auto& el : a ) cin >> el; cin >> l >> r; sort( a.begin(), a.end() ); vector< pair<int,int> > b; b.push_back({ 1, a[0] }); for ( int i=1; i<n; i++ ) { if ( a[i] == b.back().second ) b.back().first++; else b.push_back({ 1, a[i] }); } sort( b.begin(), b.end(), greater< pair<int,int> >() ); vector<int> c; while ( b.size() ) { for ( int i=int(b.size())-1; i>=0; i-- ) { c.push_back( b[i].second ); b[i].first--; } while ( b.size() && b.back().first == 0 ) b.pop_back(); } /*for ( auto& el : c ) cout << el << ' '; cout << '\n';*/ ll ans = 0; for ( int i=0; i<n; i++ ) for ( int j=i; j<n; j++ ) ans += set<int>( c.begin()+i, c.begin()+j+1 ).size(); cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...