QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#655748 | #7622. Yet Another Coffee | fls | WA | 1ms | 5720kb | C++20 | 1.4kb | 2024-10-19 09:25:51 | 2024-10-19 09:25:52 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define qmx(a,b) a<b?b:a
#define qmn(a,b) a>b?b:a
#define ll long long
#define fr first
#define se second
const int mxn = 2e5+5;
priority_queue < pair<ll, int>, vector< pair<ll, int> >, greater< pair<ll, int>> >que;
priority_queue < ll, vector<ll>, greater<ll> > fq;
struct token{
int ri;
ll wi;
}wr[mxn];
ll a[mxn], mna, ans;
inline bool cmp(struct token t1, struct token t2){
return t1.ri < t2.ri;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int test, di;
cin>>test;
while(test--){
int n, m;
cin >> n >> m;
for(int i = 1 ; i <= n ; i++){
cin >> a[i];
}
for(int i = 1 ; i <= m ; i++){
cin >> wr[i].ri >> wr[i].wi;
}
sort(wr + 1, wr + 1 + m, cmp);
mna = 1;
for(int mi = 1, i = 1 ; i <= n ; i++){
if(a[mna] > a[i])
mna = i;
while(mi <= m && wr[mi].ri >= mna){
a[mna] -= wr[mi].wi;
mi++;
}
}
for(int i = 1 ; i <= n ; i++)
fq.push(a[i]);
ans = 0;
for(int i = 1 ; i <= n ; i++){
ans += fq.top();
fq.pop();
cout << ans << " ";
}
cout << endl;
}
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 5676kb
input:
5 10 14 17 37 59 65 53 73 68 177 160 111 10 177 5 193 2 30 3 63 2 339 3 263 5 178 2 190 9 23 10 328 10 200 9 8 3 391 6 230 12 9 152 306 86 88 324 59 18 14 42 260 304 55 3 50 2 170 1 252 7 811 1 713 7 215 10 201 4 926 8 319 19 20 182 74 180 201 326 243 195 31 170 263 284 233 48 166 272 281 179 116 31...
output:
-2596 -2559 -2506 -2447 -2382 -2314 -2241 -2130 -1970 -1793 -3505 -3491 -3473 -3431 -3376 -3317 -3231 -3143 -2883 -2579 -2273 -1949 -6527 -6496 -6448 -6374 -6258 -6092 -5922 -5743 -5563 -5368 -5167 -4934 -4691 -4428 -4156 -3875 -3591 -3272 -2946 -3219 -2987 -2572 -2140 -1707 -1238 -768 -274 243 1...
result:
ok 70 numbers
Test #2:
score: -100
Wrong Answer
time: 1ms
memory: 5720kb
input:
2 5 2 1 2 3 4 5 3 1 4 2 7 3 4 3 1 10 3 8 6 4 9 3 8 4 5
output:
-2 0 3 7 12 -18 -17 -14 -11 -5 3 13
result:
wrong answer 6th numbers differ - expected: '-21', found: '-18'