QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#298401#6250. کلاس طراحی الگوریتم‌هاmahdimalverdiWA 119ms42264kbJava111.8kb2024-01-06 07:46:472024-01-06 07:46:47

Judging History

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

  • [2024-01-06 07:46:47]
  • 评测
  • 测评结果:WA
  • 用时:119ms
  • 内存:42264kb
  • [2024-01-06 07:46:47]
  • 提交

answer

import java.util.Comparator;
import java.util.PriorityQueue;
import java.util.Scanner;

class Codechef {
    public static void main(String[] args) throws java.lang.Exception {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] nums1 = new int[n];
        int[] nums2 = new int[n];

        for (int i = 0; i < n; i++) {
            nums1[i] = sc.nextInt();
        }
        for (int i = 0; i < n; i++) {
            nums2[i] = sc.nextInt();
        }

        PriorityQueue<Student> s1 = new PriorityQueue<>((l,r) -> l.num1 == r.num1 ? l.num2.compareTo(r.num2) : l.num1.compareTo(r.num1) * -1);
        PriorityQueue<Student> s2 = new PriorityQueue<>(Comparator.comparing(l -> -1 * l.num2));

        for (int i = 0; i < n; i++) {
            Student student = new Student(nums1[i], nums2[i]);
            s1.add(student);
            s2.add(student);
        }
        long sum = 0;

        while (!s1.isEmpty() || !s2.isEmpty()) {
            while (!s1.isEmpty()) {
                Student student = s1.poll();
                if (!student.visited) {
                    student.visited = true;
                    break;
                }
            }
            while (!s2.isEmpty()) {
                Student student = s2.poll();
                if (!student.visited) {
                    student.visited = true;
                    sum += student.num2;
                    break;
                }
            }
        }

        System.out.println(sum);

    }

    public static class Student {
        public Integer num1;
        public Integer num2;
        public Boolean visited;

        public Student(Integer num1, Integer num2) {
            visited = false;
            this.num1 = num1;
            this.num2 = num2;
        }
    }
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 69ms
memory: 37752kb

input:

3
1 8 4
12 11 1

output:

12

result:

ok single line: '12'

Test #2:

score: 0
Accepted
time: 92ms
memory: 38040kb

input:

5
1 2 3 4 5
2 3 4 5 6

output:

8

result:

ok single line: '8'

Test #3:

score: -100
Wrong Answer
time: 119ms
memory: 42264kb

input:

1180
961126767 261224755 907153108 798212484 599761097 743695587 995677693 496776751 924069769 564704455 429970021 140904220 294673948 518226561 354056387 468468805 420623399 648026114 519204933 451212087 891148030 391954964 211868427 570192789 268490285 866150098 808117417 634459540 981698547 75398...

output:

392060100823

result:

wrong answer 1st lines differ - expected: '444484036729', found: '392060100823'