去他喵的dp,去他喵的贪心,直接暴力就完事了

先对两种分别从大到小排序

然后枚举选了几个体积为1的,选的这些肯定是价值最大的那些,用前缀和就完事了,枚举了体积为1的个数体积为2的个数自然就知道了,再加上他们的价值就是总价值

#include<bits/stdc++.h>
using namespace std;
const int N=100000+10;
struct S1
{int id;int v;
}s1[N];
struct S2
{int id;int v;
}s2[N];
int rear1,rear2;
bool cmp1(S1 a,S1 b){return a.v>b.v;}
bool cmp2(S2 a,S2 b){return a.v>b.v;}
int sum1[N],sum2[N];
int main()
{int n,m;cin>>n>>m;for(int i=1;i<=n;i++){int a,b;cin>>a>>b;if(a==1){s1[++rear1].id=i;s1[rear1].v=b;}else{s2[++rear2].id=i;s2[rear2].v=b;}}sort(s1+1,s1+rear1+1,cmp1);sort(s2+1,s2+rear2+1,cmp2);for(int i=1;i<=rear1;i++)sum1[i]=(sum1[i-1]+s1[i].v);for(int i=1;i<=rear2;i++)sum2[i]=(sum2[i-1]+s2[i].v);int ans=0,cnt1=0,cnt2=0;for(int i=0;i<=rear1;i++){if(i<=m){int tans=0;tans+=sum1[i];if((m-i)/2>0)      //总体积-体积为1的总体积就是剩下的体积,出个2就是选的体积为2的个数{tans=tans+sum2[min((m-i)/2,rear2)];}if(tans>ans){ans=tans;cnt1=i;cnt2=min((m-i)/2,rear2);}}}cout<<ans<<endl;for(int i=1;i<=cnt1;i++)cout<<s1[i].id<<" ";for(int i=1;i<=cnt2;i++)cout<<s2[i].id<<" ";cout<<endl;return 0;
}

转载于:https://www.cnblogs.com/spzeno/p/11296826.html

CodeForces 3B-Lorry相关推荐

  1. CodeForces 3B Lorry 贪心

    题目大意是有体积为v的背包,有体积为1和2的两种物品若干,这些物品都有各自的价值.求如何取这些物品可使背包中物品的价值最大. 开始一看到是背包就傻眼了==因为数据量太大1 ≤ n ≤ 105; 1 ≤ ...

  2. CodeForces 3-B Lorry

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #i ...

  3. CF 3B. Lorry

    CF 3B. Lorry   点击打开链接 题意:有体积为1或2的物品共n种 你的容量为m,求你最多可以拿到多少价值的物品. 思路:贪心的思维 再加上尺取法求得最大的价值,这是我看大佬的博客才写出来的 ...

  4. codeforce 3B. Lorry(贪心)

    题目:http://codeforces.com/problemset/problem/3/B 大意是,给定N和V,在给出N个vehicle的类型号(1或2)和各自的载重量,求在不超过V的情况下最大的 ...

  5. 【CF】3B Lorry

    这道题目网上有几个题解,均有问题.其实就是简单的贪心+排序,没必要做的那么复杂. 一旦tot+curv > v时,显然curv==2, 有三种可能: (1)取出最小的curv==1的pp,装入当 ...

  6. CF 3B Lorry

    题目大意:有n(n≤105)(n\leq 10^5)个货物,分为两种,一种占空间1,一种占空间为2,每个货物都有一定的价值,有大小为v(v≤109)(v\leq 10^9)的背包,如何装能够使得价值最 ...

  7. codeforce 3B lorry (贪心)

    有货车运量V: 有若干物品A 占2单位体积,有若干物品B占1单位体积: 相同种类的物品价值不一定一样: 序号按照输入顺序而定: 问货车可以拉走最多多少价值的物品,并输出所选物品的序号: 思路:贪心,先 ...

  8. 【CodeForces】CF3B Lorry

    题目地址: https://www.luogu.com.cn/problem/CF3B 题意翻译: 有一辆载重量为vvv的货车, 准备运送两种物品. 物品A的重量为111,物体B的重量为222,每个物 ...

  9. Codeforces Round #699 (Div. 2) F - AB Tree(贪心、树上DP)超级清晰,良心题解,看不懂来打我 ~

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #699 (Div. 2) F - AB Tree Problem ...

  10. Codeforces Bubble Cup 8 - Finals [Online Mirror] B. Bribes lca

    B. Bribes Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/B De ...

最新文章

  1. docker 镜像重命名_Docker镜像管理(二)
  2. JavaSE(六)——Object类、克隆方法
  3. 输入梯度惩罚与参数梯度惩罚的一个不等式
  4. java线程学习第一天__低配版的卖面包机
  5. python sort函数排序_Python中排序常用到的sort 、sorted和argsort函数
  6. c语言加花指令,花指令的应用
  7. Android客户端应用享用传统Web服务
  8. VirtualBox中使用双网卡实现CentOS既能上网(校园网)也能使用SSHclient
  9. 数据分析师教你如何用Python向心仪的小姐姐表白
  10. python接球游戏
  11. FlowNet: Learning Optical Flow with Convolutional Networks
  12. python标准库——math模块
  13. php 页面字体大小,CSS_做网页字体大小参考 网页中同字号字体的不同单位对比列表,对于WEB前端页面开发,字体大 - phpStudy...
  14. html 时间控件 只选择年,js时间控件只显示年月
  15. 问的书写规则是什么意思_汉字笔顺的书写规则是什么
  16. zwm 2022 纪中集训游记
  17. C# PGM格式图像与BMP格式图像相互转换
  18. win10电脑锁屏快捷键
  19. PrivateKey私匙获取,签名生成
  20. edge怎么开启沉浸式阅读_美人鼓上舞!端午小长假,豫园将开启史上首次沉浸式国风庙会...

热门文章

  1. etc/hosts.allow和/etc/hosts.deny详解
  2. mySQL没有 with as
  3. c语言程序设计之基础题
  4. 《Essential Linux Device Drivers》中文版第1章
  5. 如何使用域组策略(AD GPO)分发软件安装以及卸载
  6. Broadcast的onReceive方法中弹出AlertDialog
  7. MOSFET常用品牌及特点
  8. 由浅入深看Java三大特征之一:多态
  9. 2012年度最佳 Web 前端开发工具和框架——《上篇》
  10. 微信小程序之图书借阅系统(含源码+论文+答辩PPT等)