【2018寒假集训 Day1】【位运算】桐桐的运输方案

桐桐购物C++ 桐桐购物 题目描述 桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。聪明的你通过编写程序帮助桐桐找出结果好吗? 输入 只有1行,两个数n和m ( 0<n,m<=20000 )。 输出 有若干行,每行三个数,分别为公鸡、母鸡 阅读详情

桐桐的运输方案(transp)
【问题描述】
桐桐有 N 件货物需要运送到目的地,它们的重量和价值分别记为:
重量:W1,W2,…,Wn;
价值:V1,V2,…,Vn;
已知某辆货车的最大载货量为 X,并且当天只能运送一趟货物。这辆货车应
该运送哪些货物,才能在不超载的前提下使运送的价值最大?
【输入格式】transp.in
第一行是一个实数,表示货车的最大载货量 x(1<x≤100)。
第二行是一个正整数,表示待运送的货物数 n(1<n≤20)。
后面 n 行每行两个用空格隔开的实数,分别表示第 1 至第 n 件货物的重量 W
和价值 V。
【输出格式】transp.out
第一行为被运送货物的总价值(只输出整数部分);
第二行为按编号大小顺序输出所有被运送货物的编号(当一件都不能运送
时,不输出)。
【输入样例】
20
4
3.5 4
4 5
5 6.8
6.9 7
【输出样例】
22
1 2 3 4
【解题思路】
首先这题有实数运算,排除DP,再看数据范围,可以看出用二进制枚举可解,当然回溯也是可行的。
运用二进制枚举需要掌握基本的位运算
左移符号<< 相当于*2
右移符号>> 相当于/2
&是位运算中的符号,和熟悉的逻辑运算符&&基本相符
100&110=100
即只有两者为1时才返回1
表示一组物品选或不选的状态可以用一个0至2^n-1的整数表示,化成二进制后只要是1就代表着选这个物品。
【参考程序】

#include<iostream>
#include<cstdio>
using namespace std;
int n,record;
double x,ansv,answ,w[21],v[21],maxans;
int main()
{
    freopen("transp.in","r",stdin);
    freopen("transp.out","w",stdout);
    cin>>x>>n;
    for (int i=1;i<=n;i++) cin>>w[i]>>v[i];
    int num=1<<n;//计算枚举的范围 
    for (int i=0;i<num;i++)//从全不选到全选,依次枚举 
    {
        int tmp=1;
        ansv=answ=0;
        for (int j=0;j<n;j++)
        {
            if (((tmp<<j)&i)>0) //判断当前物品是否被选 
            {
                ansv+=v[j+1];
                answ+=w[j+1];
                //装车 
            }
            if (answ>x) break;//超载,此情况不可选 
        }
        if (answ>x) continue; 
        if (ansv>maxans)
        {
            maxans=ansv;//记录答案 
            record=i;
        }
    }
    cout<<int(maxans)<<endl;
    int tmp=1;
    for (int j=0;j<n;j++)
    {
        if (((tmp<<j)&record)>0) cout<<j+1<<" ";//判断当前物品是否被选 
    }
    return 0;
}
第2课 桐桐的运输方案(transp)-2020.02.23.pdf 第2课 桐桐的运输方案(transp)-2020.02.23 立即下载

相关推荐

计算蛋白质结构中氨基酸之间的方向和方位

方向 (Direction):通过相邻氨基酸的 CαCα​ 原子坐标差值,得到方向向量,描述两个氨基酸之间的几何方向。方位 (Orientation):可以通过二面角(如 Psi)来表示相邻氨基酸之间的旋转关系,或者通过局部坐标系(基于 NN、CαCα​、CC 原子)描述残基的空间取向。这些计算是研究蛋白质结构动力学、折叠过程、以及相互作用的基础,尤其是在使用机器学习和深度学习模型进行蛋白质结构预测时,这些几何信息有助于更好地捕捉残基之间的空间关系。

qq_27390023的博客 1679

搜索总结

组合数输出 #include <iostream> #include <cstdio> #include <vector> using namespace std; typedef long long ll; int n,m; vector<int> v; void slove(int x) { if(v.size()==m)///组合数...

Spidy_harker的博客 704

足球赛事数据API:开发者生存指南(附真实踩坑记录)

作为一个既爱看球又爱写代码的老宅男,我这些年用过的足球API比看过的比赛还多。从最初被各种API文档折磨到怀疑人生,到现在能闭着眼睛调接口,中间的血泪史够写本书了。今天就把这些经验(和教训)分享给各位同好,特别是那些正在为"老板要做个足球App"而秃头的同行们。文档清晰免费层可用响应格式规范API-Sports免费额度大方支持GraphQL有中文文档(难得!Sportmonks数据全面有Webhook支持按需付费。

Happy0970的博客 2190

桐桐的运输方案

桐桐有N件货物需要运送到目的地,它们的质量和价值分别记为: 质量:W1,W2,…,Wn ; 价值:V1,V2,\ldtos,Vn ; 已知某辆货车的最大载货量为x ,并且当天只能运送一趟货物。这辆货车应该运送哪些货物,才能在不超载的前提下使运送的价值最大?

Ryling01的博客 288

Spine动画在Unity里卡顿、闪烁、排序错乱?这些性能优化与渲染问题一次讲清

本文深入解析了Spine动画在Unity中常见的卡顿、闪烁和排序错乱问题,提供了全面的性能优化与渲染解决方案。从性能瓶颈诊断到材质合并、动态合批优化,再到层级错乱与Alpha闪烁的处理,帮助开发者提升动画表现和运行效率。特别针对Unity和Spine的协同工作进行了详细的技术探讨。

weixin_29967445的博客 379

MTGS与3D高斯泼溅:如何用多轨迹数据重建自动驾驶场景(附代码解析)

本文深入解析了MTGS(多轨迹高斯泼溅)技术在自动驾驶场景重建中的工程实践。该方法通过分层场景表示,巧妙融合多轨迹数据,利用3D高斯泼溅技术统一处理静态几何与动态物体,有效解决了复杂环境下的重建难题。文章结合代码,详细阐述了其实现框架、损失函数设计及优化策略,为构建高保真数字孪生场景提供了实用指南。

v5w6x的博客 444

第2课 桐桐的运输方案《聪明人的游戏 信息学探秘.提高篇》

/* 第2课 桐桐的运输方案(transp)-2020-02-23 2019 CSP-J/S第一轮各省分数线统计与分析(含浙江省) http://www.jzb.com/bbs/thread-7553499-1-1.html CSP-J/S2019第二轮入门级一等各省评级分数线 http://www.zizzs.com/c/201912/41117.html CSP-J/S2019第二轮提高级一等各省评级分数线 http://www.zizzs.com/c/201912/41116.html */.

青少年趣味编程 701

U-net复现pytorch版本 以及制作自己的数据集并训练

GitHub链接: https://github.com/milesial/Pytorch-UNet 论文链接:

candice5566的博客 3万+

【搜索】桐桐的运输方案

问题 G: 【搜索】桐桐的运输方案 时间限制: 1 Sec内存限制: 64 MB提交: 46解决: 14[提交] [状态] [讨论版] [命题人:外部导入] 题目描述 桐桐有N件货物需要运送到目的地,它们的质量和价值分别记为: 质量:W1,W2,…,Wn; 价值:Vl,V2,…,Vn; 已知某辆货车的最大载货量为x,并且当天只能运送一趟货物。这辆货车应该运送哪些货物,才...

weixin_34194087的博客 353

RML2018.01a数据集的读取与使用

基于深度学习的自动调制识别

QAQIknow的博客 1万+

【00】虹软2023届校招专场 ,计算机类笔试攻略(笔试考试时间、考察范围、笔试难度 等说明)

虹软科技2023校招笔试攻略:三大岗位类别(算法、算法优化、开发)分别于7月24日进行。题型包括选择题、编程题和问答题,其中算法类题目降低难度,编程题改为LeetCode模式。重点考察数学基础、机器学习、编程能力(C/C++/Python)、数据结构和算法优化等。建议根据投递岗位选择问答题,算法优化类注重系统知识和SIMD优化,开发类侧重多线程等实际应用能力。笔试结果将作为校招offer的重要参考。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 276

桐人的约会_ssl2490_最短路

Description这是一个风和日丽的日子,桐人和诗乃在约会。他们所在的城市共有N个街区,和M条道路,每条道路连接两个不同的街区,并且通过一条道路需要花费一些时间。他们现在处于N号街区,正在享受幸福时光的桐人完全忘记了他的手机被亚丝娜安装了监控装置的事情,此时亚丝娜已经得知了桐人的位置以及他正在和一个妹子约会的事实,十分愤怒,于是从她所在的1号街区火速赶往N号街区。现在这个城市中有一条道路正在维修

olahiuj的博客 559

【CANoe】CANoe的 I/O功能-以VN1640A为例

Canoe的 I/O功能-以VN1640A为例

星Yeah 的博客 7870

java动态规划货车运输_【2018寒假集训 Day1】【位运算】桐桐的运输方案

桐桐的运输方案(transp)【问题描述】桐桐有 N 件货物需要运送到目的地,它们的重量和价值分别记为:重量:W1,W2,…,Wn;价值:V1,V2,…,Vn;已知某辆货车的最大载货量为 X,并且当天只能运送一趟货物。这辆货车应该运送哪些货物,才能在不超载的前提下使运送的价值最大?【输入格式】transp.in第一行是一个实数,表示货车的最大载货量 x(1<x≤100)。第二行是一个正整数,表示待...

weixin_31463457的博客 640

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

【C4】【搜索】运送货物

已知某辆货车的最大载货量为X,并且当天只能运送一趟货物。这辆货车应该运送哪些货物,才能在不超载的前提下使运送的价值最大?后面n行每行两个用空格隔开的实数,分别表示第1至第n件货物的质量w和价值v。第2行为按编号大小顺序输出所有被运送货物的编号(当一件都不能运送时,不输出)。第1行是一个实数,表示货车的最大载货量x(1

zhunubi的博客 281

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【搜索与回溯算法】桐桐的运输方案

已知某辆货车的最大载货量为X,并且当天只能运送一趟货物。这辆货车应该运送哪些货物,才能在不超载的前提下使运送的价值最大?第二行为按编号大小顺序输出所有被运送货物的编号(当一件都不能运送时,不输出)。后面n行每行两个实数,分别表示第1至第n件货物的重量W和价值V。第一行是一个实数,表示货车的最大载货量x(1<x≤100)。第二行是一个正整数,表示待运送的货物数n(n<1≤20)。第一行为被运送货物的总价值(只输出整数部分);重量:W1,W2,...,Wn。价值:V1,V2,...,Vn。

b1233211232321的博客 427

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

bfs 最大平台

题目描述 下面是一个4×4的矩阵,它的特点是:(1)矩阵的元素都是正整数;(2)数值相等的元素相邻。这样,这个矩阵就形成了一级级“平台”,其最大的“平台”面积为8,高度(元素值)为6。若有一个 N×N的矩阵也具有上面矩阵的特点,求矩阵最大“平台”的面积和高度。6 6 6 71 6 3 71 6 6 76 6 7 7 输入 第一行为N(1≤N≤100),以下为N×N的矩阵。 ...

weixin_30378623的博客 409

C++循环结构——[N]桐桐去购物(百钱买百鸡)

她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。有若干行,每行三个数,分别为公鸡、母鸡和小鸡的只数,用空格隔开,按照公鸡只数升序排列。百钱买百鸡直接用枚举算法即可,难点要注意小鸡的数量不能是小数。只有1行,两个数n和m ( 0<n,m<=20000 )。

qq_39127687的博客 868

桐桐去购物(第三章第1课)

桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。聪明的你通过编写程序帮助桐桐找出结果好吗?

luhaiminluhaimin的博客 1765

问题 M: 【枚举】桐桐数

你的忏悔或许会让你心安,但未必别人如此。 题目描述 桐桐很喜欢研究数字,特别喜欢研究质数。一天,桐桐发现有一些数字可以表示成两个质数相乘的形式,比如,10=2×5,2,5都是质数,所以10是一个“桐桐数”。所以桐桐决定考考你,她告诉你一个数n,请你判断n是不是“桐桐数”。 输入 一个数n(1≤n≤231-1)。 输出 输出一行,如果n是一个“桐桐数”,则输出“It's a ...

0k-ok 3580

桐桐的全排列(DFS)

今天,桐桐的老师布置了一道数学作业,要求列出所有从数字1到数字n的连续自然数的排列,要求所产生的任一数字序列中不允许出现重复的数字。因为排列数很多,桐桐害怕写漏了,所以她决定用计算机编程来解决。按字典序输出由1~n组成的所有不重复的数字序列,每行一个序列,每个数字之间有一个空格。只有一个整数n(1≤n≤9)。

bettie__的博客 421

【百元买鸡,满足数学方程组型】

桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。聪明的你通过编写程序帮助桐桐找出结果好吗?

xiworldla的博客 416

C语言东方博宜oj 1077

题目描述 桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。聪明的你通过编写程序帮助桐桐找出结果好吗? 输入 只有1行,两个数n和m ( 0<n,m<=20000 )。 输出 有若干行,每行三个数,分别为公鸡、母鸡

Lelico_Mo的博客 2416

算法分析2

1.题目描述桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位,发现鸡的价格有三种:公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡,问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完,且买的各种鸡的只数为大于等于0的整数。桐桐回到家里便拿起笔来认真计算,算了好久还没得出答案。聪明的你通过编写程序帮助桐桐找出结果好吗?输入只有1行,两个数...

vickey_xia的博客 2877
上一篇: 【NOIP2017】【Luogu P3956】【SPFA】棋盘
下一篇: 【2018寒假集训Day 1】【位运算】生成字符串
苟岂
博客等级 码龄10年 20粉丝 44原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值