/ Vijos / 讨论 / 蚯蚓 /

这数据也太水了点吧。。

优先队列加个优化居然可以拿到85分????

#include<cstdio>
#include<queue>
using namespace std;
int n,m,q,u,v,t;
priority_queue<int> que;
int read(){
    char ch; int re=0,f=1;
    ch=getchar();
    while(ch<'0'||ch>'9'){
        if(ch=='-') f=-f; ch=getchar();
    } 
    while(ch>='0'&&ch<='9'){
        re=re*10+ch-'0'; ch=getchar();
    }
    return re*f;
}
int main(){
    n=read(); m=read(); q=read(); u=read(); v=read(); t=read();
    double p=(double)u/(double)v;
    int l;
    for(int i=1;i<=n;i++){
        l=read();
        que.push(l);
    }
    int a,b,c,nu=1,d=t,add=0;
    for(int i=1;i<=m;i++){
        a=que.top(); que.pop();
        if(i==d){
            nu++; d=t*nu; 
            printf("%d ",a+(i-1)*q);
        }
        b=((i-1)*q+a)*p; c=(a+(i-1)*q)-b; 
        b-=i*q; c-=i*q;
        que.push(b); que.push(c);
    }
    printf("\n");
    int num=0;
    while(!que.empty()){
        num++;
        if(num%t==0) printf("%d ",que.top()+m*q);
        que.pop();
    }
    printf("\n");
    return 0;
}

0 条评论

目前还没有评论...

信息

ID
2007
难度
7
分类
(无)
标签
递交数
1580
已通过
319
通过率
20%
被复制
8
上传者