QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#325970#5592. Family Visitsanpans#WA 1ms3604kbC++14874b2024-02-12 06:16:232024-02-12 06:16:23

Judging History

你现在查看的是最新测评结果

  • [2024-02-12 06:16:23]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:3604kb
  • [2024-02-12 06:16:23]
  • 提交

answer

#include <iostream>
#include <vector>
#include <algorithm>
#include <cstdio>
#include <queue>

using namespace std;

int n, d;
int m[1000], c[1000];

int main() {
    cin >> n >> d;
    int pointer = 0;
    while (pointer < n) {
        cin >> m[pointer] >> c[pointer];
        pointer++;
    }
    pointer = 0;
    int ret = 0, curr = 0, visit;
    while (pointer++ < d) {
        priority_queue<int> s;
        int mess = 0;
        cin >> visit;
        while (visit - 1 >= curr) {
            s.push(c[curr]);
            mess += m[curr++];
        }
        while (!s.empty()) {
            mess -= s.top();
            s.pop();
            ret++;
            if (mess <= 0) break;
        }
        if (mess > 0) {
            cout << -1 << endl;
            return 0;
        }
    }
    cout << ret << endl;
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3604kb

input:

6 2
1 2
2 1
1 4
3 2
3 6
2 3
3
6

output:

3

result:

ok single line: '3'

Test #2:

score: -100
Wrong Answer
time: 1ms
memory: 3580kb

input:

10 5
12 10
0 2
7 1
1 8
3 4
3 4
2 3
1 2
10 1
7 5
2
4
5
6
8

output:

6

result:

wrong answer 1st lines differ - expected: '7', found: '6'