欢迎光临散文网 会员登陆 & 注册

算法竞赛2021 ICPC Southeastern Europe Regional Contest_Pay Respects

2022-03-30 13:23 作者:Clayton_Zhou  | 我要投稿


//#include "stdafx.h"

#include<cstdio>

#include<cctype>

#include<vector>

#include<algorithm>

#include<queue>


using namespace std;

 

  

int N=10, X=1, R=10, P=40, K=1;


char str[1010000]={1,1,1,1, 1,    1,1,1,1, 1   };

char vis[1010000];

long   long sum=0;

priority_queue<pair<long long, int>> a; 


int main(){


  scanf("%d",&N); 

  scanf("%d",&X);    

  scanf("%d",&R);     

  scanf("%d",&P);     

  scanf("%d",&K);  

  scanf("%s",str); // */

 

int x;

   

 

long long cos;

for(  x=1;x<=N;x++)

{

if(str[x-1]=='1')cos=(N-(long long)x+1)*(P+R);

else cos=(N-(long long)x+1)*P;

a.push(pair<long long, int>(cos,x));

}

  

while (K) 

    {        

//printf("%d\n", a.top().first );

vis[a.top().second-1]= 1;

        a.pop();

K--;

      } 


long long val;

if(vis[0]) val=X+P;

else   if(str[0]=='1')val=X-R;

else val=X;

sum+=val;

for(  x=2;x<=N;x++)

{

if(vis[x-1])

val+=P;

else if(str[x-1]=='1')val-=R;

sum+=val;

}

printf("%lld\n",sum); 

return 0;

}


算法竞赛2021 ICPC Southeastern Europe Regional Contest_Pay Respects的评论 (共 条)

分享到微博请遵守国家法律