首页 > 其他分享 >E. Kolya and Movie Theatre

E. Kolya and Movie Theatre

时间:2023-08-28 15:22:47浏览次数:40  
标签:Kolya val int Movie ll que ans Theatre

观察一下可以发现,d产生的消耗只与最后一次电影的观看位置有关。设1 <= i <= n,那么由d产生的消耗就是i * d。同时能从1 ~ i 中取得的回报是这段区间里最大的m个正数。用一个优先队列维护最大的m个正数,用val维护d产生的消耗与最大的m个正数产生的回报,记录所有位置的最大值,最后判断一下最大值是否大于0, 否则就执行一场电影都不看的策略,答案为0。遍历数组的时间为O(n),每次维护的时间为O(log m),总时间复杂度为O(n * log m)。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 
 5 void solve(){
 6     ll n, m, d;
 7     cin >> n >> m >> d;
 8     vector<ll> a(n);
 9     for(int i = 0; i < n; i++){
10         cin >> a[i];
11     }
12 
13     priority_queue<ll, vector<ll>, greater<ll>> que;
14     ll ans = 0;
15     ll val = 0;
16     for(int i = 0; i < n; i++){
17         if(a[i] > 0){
18             que.push(a[i]);
19             val += a[i];
20         }
21         while(que.size() > m){
22             val -= que.top();
23             que.pop();
24         }
25 
26         val -= d;
27         ans = max(ans, val);
28     }
29 
30     if(ans < 0){
31         ans = 0;
32     }
33     cout << ans << endl;
34 }
35 
36 int main(){
37     int t = 1;
38     cin >> t;
39     while(t--){
40         solve();
41     }
42 }

 

标签:Kolya,val,int,Movie,ll,que,ans,Theatre
From: https://www.cnblogs.com/kurish/p/17662369.html

相关文章

  • 改造版:moviepy使用ffmpeg按照长度分割mp4,根据源文件命名,及时关闭文件避免异常
    importos#导入os模块,用于处理文件和目录操作importsubprocess#导入subprocess模块,用于在新的进程中执行子程序importtime#导入time模块,用于处理时间相关操作importrandomfrommoviepy.editorimportVideoFileClip#从moviepy.editor模块导入VideoFileCl......
  • E. Kolya and Movie Theatre
    E.KolyaandMovieTheatreRecently,Kolyafoundoutthatanewmovietheatreisgoingtobeopenedinhiscitysoon,whichwillshowanewmovieeverydayfor$n$days.So,onthedaywiththenumber$1\lei\len$,themovietheatrewillshowthepre......
  • movielens数据集分析python
    Movielens数据集分析Python实现概述本文将介绍如何使用Python对Movielens数据集进行分析。Movielens是一个常用的电影评分数据集,包含了用户对电影的评分、电影信息和用户信息等数据。通过对这个数据集的分析,我们可以探索用户对电影的评分情况,了解用户和电影的特征,并进一步进行推......
  • MATLAB模糊C均值聚类FCM改进的推荐系统协同过滤算法分析MovieLens电影数据集
    全文链接:http://tecdat.cn/?p=32594原文出处:拓端数据部落公众号在当今信息爆炸的时代,电影作为人们生活中不可或缺的娱乐方式,受到了越来越多的关注。而为了让观众能够更好地选择适合自己口味的电影,推荐系统成为了一个备受关注的研究领域。协同过滤算法是其中一种被广泛使用的方法......
  • moviepy操作
      1.首先下载安装moviepy  使用指令pipinstallmoviepy(加源)  注:可以选择在terminal安装,也可以在cmd安装 个人喜欢在cmd安装 有时候pycharm安装需要重启软件 2.导入俩个库importrequestsfrommoviepyimport*   3.首先爬取一个视频并且保存伪装......
  • python - moviepy音频剪切与拼接
    pip3installmoviepy-ihttps://pypi.tuna.tsinghua.edu.cn/simplefrommoviepy.audio.io.AudioFileClipimportAudioFileClipfrommoviepy.editorimportconcatenate_audioclipsa=AudioFileClip('a.mp3')#读入音频audio1=a.subclip(0,83)#剪切0-83秒......
  • Movie collection UVA - 1513
    有n个影碟,标号为1~n,位置为0~n-1,每次取出一个影碟看完后,将其放在最前面(标号为0处),问每个影碟取出前,其位置之前有多少个影碟 开2倍数组,"i放置前面"这个操作add(i,-1),add(newi,1)  #include<iostream>#include<cstring>#include<algorithm>#include<vector>usingn......
  • Theatres in the World
    MariinskyII新国立劇場梅田芸術劇場MesaArtsTheater盛京大剧院哈尔滨大剧院......
  • js mouse movie获取坐标
    document.addEventListener('mousemove',function(e){//mousemove鼠标一移动,就会触发事件//获取鼠标最新的坐标console.log("y:",e.clientY......
  • B. Kolya and Tandem Repeat -- codeforces
    B.KolyaandTandemRepeathttps://codeforces.com/problemset/problem/443/B 思路如果补充字符长度k大于等于s长度,则新的字符串,一份两半,前半分包括s,可能包括部分补......