Submission #20040


ソースコード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <bits/stdc++.h>
using namespace std;
struct company {
int d, p;
bool operator<(const company &r) const {
return d < r.d;
}
};
int dist(int ax, int ay, int bx, int by) {
return abs(ax - bx) + abs(ay - by);
}
main() {
int n, t, k;
int sx, sy;
company c[1002];
cin >> n >> t >> k;
cin >> sx >> sy;
for(int i = 0; i < n; ++i) {
int x, y, p;
cin >> x >> y >> p;
c[i] = (company){ dist(sx, sy, x, y), p };
}
c[n] = (company){ 1 << 30, 0 };
sort(c, c + n);
int ans = 0, cnt = 0, idx = n;
int r = t % k;
bool used[1002] = { false };
for(int i = 0; i < n; ++i){used[i]=false;}used[n]=true;
for(int i = t/k; i>=0 && cnt<n; --i) {
int target = n;
if(r > t) break;
// while(idx < n && r < t && r < c[idx].d)r += k;
// while(r >= c[idx].d) ++idx;
for(int j = 0; j < idx && i*k+c[j].d <= t; ++j) {
if(c[j].p > c[target].p) {
target = j;
}
}
if(c[target].p)cnt++;
ans += c[target].p;
c[target].p=0;
/*
cout << endl;
cout << "idx: " << idx << endl;
cout << "target: " << target << endl;
cout << "r: " << r << endl;
cout << "p: " << c[target].p << endl;
*/
r += k;
}
cout << ans << endl;
}

ステータス

項目 データ
問題 0737 - 力のコーヒー (Power Coffee)
ユーザー名 root
投稿日時 2017-06-20 18:40:27
言語 C++11
状態 Accepted
得点 10
ソースコード長 1286 Byte
最大実行時間 119 ms
最大メモリ使用量 876 KB

セット

セット 得点 Cases
1 ALL 10 / 10 *

テストケース

ファイル名 状態 実行時間 メモリ使用量 #
input01 AC 10 ms 480 KB
1
input02 AC 13 ms 444 KB
1
input03 AC 10 ms 412 KB
1
input04 AC 11 ms 500 KB
1
input05 AC 17 ms 468 KB
1
input06 AC 20 ms 312 KB
1
input07 AC 13 ms 536 KB
1
input08 AC 9 ms 500 KB
1
input09 AC 10 ms 464 KB
1
input10 AC 10 ms 560 KB
1
input11 AC 14 ms 532 KB
1
input12 AC 9 ms 628 KB
1
input13 AC 10 ms 596 KB
1
input14 AC 14 ms 564 KB
1
input15 AC 13 ms 532 KB
1
input16 AC 13 ms 628 KB
1
input17 AC 10 ms 596 KB
1
input18 AC 9 ms 564 KB
1
input19 AC 11 ms 532 KB
1
input20 AC 10 ms 632 KB
1
input21 AC 10 ms 600 KB
1
input22 AC 11 ms 564 KB
1
input23 AC 14 ms 524 KB
1
input24 AC 10 ms 624 KB
1
input25 AC 14 ms 592 KB
1
input26 AC 18 ms 688 KB
1
input27 AC 12 ms 656 KB
1
input28 AC 11 ms 624 KB
1
input29 AC 13 ms 596 KB
1
input30 AC 14 ms 688 KB
1
input_maximum01 AC 80 ms 528 KB
1
input_maximum02 AC 63 ms 496 KB
1
input_maximum03 AC 91 ms 592 KB
1
input_maximum04 AC 101 ms 688 KB
1
input_maximum05 AC 119 ms 656 KB
1
input_maximum06 AC 12 ms 624 KB
1
input_maximum07 AC 18 ms 716 KB
1
input_maximum08 AC 13 ms 684 KB
1
input_maximum09 AC 15 ms 652 KB
1
input_maximum10 AC 14 ms 620 KB
1
input_maximum11 AC 96 ms 584 KB
1
input_maximum12 AC 119 ms 680 KB
1
input_maximum13 AC 107 ms 648 KB
1
input_maximum14 AC 99 ms 620 KB
1
input_maximum15 AC 100 ms 588 KB
1
input_maximum16 AC 87 ms 556 KB
1
input_maximum17 AC 117 ms 784 KB
1
input_maximum18 AC 107 ms 752 KB
1
input_maximum19 AC 89 ms 716 KB
1
input_maximum20 AC 96 ms 688 KB
1
input_sample1 AC 13 ms 780 KB
1
input_sample2 AC 12 ms 876 KB
1