【杭电】[4505]小Q系列故事——电梯里的爱情

这里写图片描述
这里写图片描述

运用了优先队列的思想
所以可以把所有人需要到的层数全部“推入”队列
然后需要的时候直接提取就好了

#include<stdio.h>
#include<queue>
using namespace std;
struct node {
    int x;
    bool friend operator<(node A,node B) {
        return A.x>B.x;
    }
} a;

int main() {
    int T;
    scanf("%d",&T);
    while(T--) {
        int n;
        scanf("%d",&n);
        priority_queue<node>q;
        for(int i=0; i<n; i++) {
            scanf("%d",&a.x);
            q.push(a);
        }
        int sum=0,last=0;
        while(!q.empty()) {
            a=q.top();
            if(a.x==last)
                sum+=1;
            else
                sum+=(a.x-last+1)*6;
            last=a.x;
            q.pop();
        }
        printf("%d
",sum+last*4);
    }
    return 0;
}

题目地址:【杭电】[4505]小Q系列故事——电梯里的爱情

原文地址:https://www.cnblogs.com/BoilTask/p/12569669.html