CF 255 DIV2 D DZY Loves Modification(优先队列)
来源:互联网 发布:网络社交媒体 编辑:程序博客网 时间:2024/06/06 01:19
给你一个NXM的矩阵,进行K次操作,给你一个P
每次操作:选取某行(列) ans+= 该行(列)的和 该行(列)所有元素-P
我之前一直以为可以用线段树做, 一直WA 我还以为是我的线段树没写对
最后才知道原来根本就不能用线段树做。。。
预处理 i次选择行,行的总值为r【i】,同理去处理列
最终的ans= r[i] + c[k-i] - i*(k-i)*p;
代码:
#include <cstdio>#include <queue>using namespace std;#define maxn 1000#define LL long long#define maxk 1000000LL num[maxn+5][maxn+5];LL r[maxk+5] , c[maxk+5];int main(){LL n, m, k, p;while(scanf("%lld %lld %lld %lld",&n,&m,&k,&p)!=EOF){for(LL i= 1; i<= n; i++)for(LL j= 1; j<= m; j++)scanf("%lld",&num[i][j]);priority_queue<LL> q1, q2;for(LL i= 1; i<= n; i++){LL sum= 0;for(LL j= 1; j<= m; j++)sum+= num[i][j];q1.push(sum);}for(LL j= 1; j<= m; j++){LL sum= 0;for(LL i= 1; i<= n; i++)sum+= num[i][j];q2.push(sum);}r[0]= 0;c[0]= 0;for(LL i= 1; i<= k; i++){LL t= q1.top();r[i]= r[i-1] + t;q1.pop();q1.push(t- m*p);t= q2.top();c[i]= c[i-1]+ t;q2.pop();q2.push(t- n*p);}LL ans= c[k];for(LL i= 1; i<= k; i++){LL s= r[i] + c[k-i] - i*(k-i)*p;if(s> ans)ans= s;}printf("%lld\n",ans);}return 0;}
0 0
- CF 255 DIV2 D DZY Loves Modification(优先队列)
- DZY Loves Modification(优先队列)
- CF 446B DZY Loves Modification 优先队列
- codeforces#FF(div2) D DZY Loves Modification
- D. DZY Loves Modification
- Codeforces Round #FF (Div. 2) D. DZY Loves Modification 贪心+优先队列
- codeforces 255#D. DZY Loves Modification
- I - DZY Loves Modification--行列单独操作+优先队列
- DZY Loves Modification CodeForces 447D 贪心
- Codeforces 446B DZY Loves Modification 矩阵行列分开考虑 优先队列+构造
- ACM篇:CF 446B -- DZY Loves Modification
- DZY Loves Modification
- DZY Loves Modification CodeForces
- DZY Loves Modification CodeForces
- Codeforces Round #FF (Div. 2)D. DZY Loves Modification
- Codeforces Round #FF (Div. 2) D. DZY Loves Modification
- HDU 5195 DZY Loves Topological Sorting(优先队列)
- CF #278 div2 D Strip 线段树+优先队列
- 知识总结
- UIButton中setTitleEdgeInsets和setImageEdgeInsets的使用
- Unity3D面试——真实的面试
- 六个细节改变提升 Android L 用户体验
- B - Adding Reversed Numbers
- CF 255 DIV2 D DZY Loves Modification(优先队列)
- 磁盘使用情况
- 新开篇--自我介绍
- Swift 语言中文指导文档备案
- 最小生成树——畅通工程
- wiki 1155 金明的预算方案
- Yarn的JVM重用功能——uber
- Android Lint
- java反射与xml文件解析