Submission #3600415
Source Code Expand
#include <limits.h>
#include <algorithm>
#include <bitset>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque>
#include <functional>
#include <iomanip>
#include <iostream>
#include <list>
#include <map>
#include <numeric>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <utility>
#include <vector>
#define int long long
#define REP(i, n) for (int i = 0, i##_len = (n); i < i##_len; ++i)
#define REPS(i, n) for (int i = 1, i##_len = (n); i <= i##_len; ++i)
#define FOR(i, a, b) for (int i = (a), i##_len = (b); i <= i##_len; ++i)
#define REV(i, a, b) for (int i = (a); i >= (b); --i)
#define CLR(a, b) memset((a), (b), sizeof(a))
#define DUMP(x) cout << #x << " = " << (x) << endl;
#define INF 1001001001001001001ll
#define fcout cout << fixed << setprecision(10)
using namespace std;
struct BIT {
int n;
vector<int> bit; // 1-indexd
BIT(int sz) {
bit.resize(sz + 1);
n = sz;
}
int sum(int i) {
int s = 0;
while (i > 0) {
s += bit[i];
i -= i & -i;
}
return s;
}
void add(int i, int x) {
while (i <= n) {
bit[i] += x;
i += i & -i;
}
}
};
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int N, K;
cin >> N >> K;
vector<int> a(N);
vector<int> sum(N + 1);
REP(i, N) {
cin >> a[i];
sum[i + 1] = a[i] + sum[i];
}
vector<int> b(N + 1);
FOR(i, 1, N) {
b[i] = sum[i] - i * K;
}
vector<int> sb = b;
sort(sb.begin(), sb.end());
sb.erase(unique(sb.begin(), sb.end()), sb.end());
map<int, int> id;
REP(i, sb.size()) {
id[sb[i]] = i;
}
BIT bit(N + 1);
int ans = 0;
REP(i, b.size()) {
int idx = id[b[i]] + 1;
ans += bit.sum(idx);
bit.add(idx, 1);
}
cout << ans << endl;
return 0;
}
Submission Info
Submission Time |
|
Task |
E - Meaningful Mean |
User |
tatsumack |
Language |
C++14 (GCC 5.4.1) |
Score |
600 |
Code Size |
2110 Byte |
Status |
AC |
Exec Time |
187 ms |
Memory |
20608 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
600 / 600 |
Status |
|
|
Set Name |
Test Cases |
Sample |
a01, a02, a03 |
All |
a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23 |
Case Name |
Status |
Exec Time |
Memory |
a01 |
AC |
1 ms |
256 KB |
a02 |
AC |
1 ms |
256 KB |
a03 |
AC |
1 ms |
256 KB |
b04 |
AC |
1 ms |
256 KB |
b05 |
AC |
35 ms |
8064 KB |
b06 |
AC |
156 ms |
20608 KB |
b07 |
AC |
114 ms |
14336 KB |
b08 |
AC |
113 ms |
14336 KB |
b09 |
AC |
174 ms |
20608 KB |
b10 |
AC |
165 ms |
20608 KB |
b11 |
AC |
1 ms |
256 KB |
b12 |
AC |
1 ms |
384 KB |
b13 |
AC |
52 ms |
7552 KB |
b14 |
AC |
177 ms |
20608 KB |
b15 |
AC |
91 ms |
14336 KB |
b16 |
AC |
164 ms |
20608 KB |
b17 |
AC |
187 ms |
20608 KB |
b18 |
AC |
187 ms |
20608 KB |
b19 |
AC |
157 ms |
20608 KB |
b20 |
AC |
40 ms |
8064 KB |
b21 |
AC |
35 ms |
8064 KB |
b22 |
AC |
171 ms |
20608 KB |
b23 |
AC |
171 ms |
20608 KB |