Submission #3004281
Source Code Expand
#include <bits/stdc++.h> #define ll long long #define REP(i, n) for (ll (i) = 0; (i) < (n); (i)++) #define REPI(i, a, b) for (ll (i) = (a); (i) < (b); (i)++) #define int long long using namespace std; using P = pair<int, int>; using VI = vector<int>; using VVI = vector<VI>; using VVVI = vector<VVI>; // 1-indexed であることに注意! class BIT { public: int n; VI dat; BIT(int n_) { n = n_; dat = VI(n+1, 0); } void add(int i, int x) { while (i <= n) { dat[i] += x; i += i & -i; } } int sum(int i) { int acc = 0; while (i > 0) { acc += dat[i]; i -= i & -i; } return acc; } }; int N; VI H; map<int, int> trans; signed main() { cin >> N; H.resize(N); REP (i, N) { cin >> H[i]; trans[H[i]]++; } int k = 1; for (auto& s: trans) { if (s.second >= 2) { cout << -1 << endl; return 0; } s.second = k++; } assert(N == k-1); BIT bit(N); int ans = 0; REP (i, N) { ans += H[i] * (i - bit.sum(trans[H[i]])); bit.add(trans[H[i]], 1); } cout << ans << endl; }
Submission Info
Submission Time | |
---|---|
Task | E - Line up! |
User | knshnb |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1147 Byte |
Status | AC |
Exec Time | 118 ms |
Memory | 8064 KB |
Judge Result
Set Name | Sample | Subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 30 / 30 | 70 / 70 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt |
Subtask1 | subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask0_sample_01.txt, subtask0_sample_02.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 1 ms | 256 KB |
subtask0_sample_02.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 2 ms | 384 KB |
subtask1_02.txt | AC | 2 ms | 384 KB |
subtask1_03.txt | AC | 2 ms | 384 KB |
subtask1_04.txt | AC | 1 ms | 256 KB |
subtask1_05.txt | AC | 1 ms | 256 KB |
subtask1_06.txt | AC | 1 ms | 256 KB |
subtask1_07.txt | AC | 1 ms | 256 KB |
subtask1_08.txt | AC | 2 ms | 256 KB |
subtask1_09.txt | AC | 2 ms | 256 KB |
subtask1_10.txt | AC | 2 ms | 256 KB |
subtask1_11.txt | AC | 2 ms | 256 KB |
subtask1_12.txt | AC | 2 ms | 256 KB |
subtask1_13.txt | AC | 2 ms | 256 KB |
subtask1_14.txt | AC | 2 ms | 384 KB |
subtask1_15.txt | AC | 2 ms | 384 KB |
subtask1_16.txt | AC | 2 ms | 384 KB |
subtask1_17.txt | AC | 2 ms | 384 KB |
subtask1_18.txt | AC | 2 ms | 384 KB |
subtask1_19.txt | AC | 2 ms | 384 KB |
subtask1_20.txt | AC | 2 ms | 384 KB |
subtask1_21.txt | AC | 2 ms | 384 KB |
subtask1_22.txt | AC | 2 ms | 384 KB |
subtask1_23.txt | AC | 2 ms | 384 KB |
subtask2_01.txt | AC | 73 ms | 7296 KB |
subtask2_02.txt | AC | 108 ms | 8064 KB |
subtask2_03.txt | AC | 110 ms | 8064 KB |
subtask2_04.txt | AC | 17 ms | 1024 KB |
subtask2_05.txt | AC | 74 ms | 7296 KB |
subtask2_06.txt | AC | 64 ms | 6400 KB |
subtask2_07.txt | AC | 63 ms | 6400 KB |
subtask2_08.txt | AC | 64 ms | 6400 KB |
subtask2_09.txt | AC | 63 ms | 6400 KB |
subtask2_10.txt | AC | 63 ms | 6400 KB |
subtask2_11.txt | AC | 116 ms | 8064 KB |
subtask2_12.txt | AC | 115 ms | 8064 KB |
subtask2_13.txt | AC | 115 ms | 8064 KB |
subtask2_14.txt | AC | 116 ms | 8064 KB |
subtask2_15.txt | AC | 118 ms | 8064 KB |
subtask2_16.txt | AC | 116 ms | 8064 KB |
subtask2_17.txt | AC | 116 ms | 8064 KB |
subtask2_18.txt | AC | 116 ms | 8064 KB |
subtask2_19.txt | AC | 116 ms | 8064 KB |
subtask2_20.txt | AC | 116 ms | 8064 KB |