关注
#include <stdio.h>
#define BIT(n) (1<<n)
int main()
{
int v[5];//价值
int h[5];//重量
int c=0;//最大容量
unsigned char bit=31;//二进制11111 分别代表5个宝贝 ,选中为1,未选中为0 共有2^5种 可能性
int maxv=0;//偷到宝贝的总价值
scanf("%d,%d,%d,%d,%d",&v[0],&v[1],&v[2],&v[3],&v[4]);
scanf("%d,%d,%d,%d,%d",&h[0],&h[1],&h[2],&h[3],&h[4]);
scanf("%d",&c);
//循环32次
for(int i=0;i<=bit;i++)
{//判断选中宝贝重量之和是否小于最大容量
if(h[0]*(i&BIT(0))+h[1]*((i&BIT(1))>>1)+h[2]*((i&BIT(2))>>2)+h[3]*\
((i&BIT(3))>>3)+h[4]*((i&BIT(4))>>4)<=c)
{ //选中宝贝价值是否大于之前的总价值
if( v[0]*(i&BIT(0))+v[1]*((i&BIT(1))>>1)+v[2]*((i&BIT(2))>>2)+v[3]*\
((i&BIT(3))>>3)+v[4]*((i&BIT(4))>>4)>maxv)
maxv=v[0]*(i&BIT(0))+v[1]*((i&BIT(1))>>1)+v[2]*((i&BIT(2))>>2)+v[3]*\
((i&BIT(3))>>3)+v[4]*((i&BIT(4))>>4);
}
}
printf("\n%d\n",maxv);
return 0;
}
//自己用C语言写的,格式有点乱,凑合着看吧,命令行输入的逗号是英文的逗号,别弄错了
//"\"是我为了看着简洁加上的,不能运行的话删掉就行了
查看原帖
2 评论
相关推荐
12-18 18:07
浙江大学 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
127162次浏览 2138人参与
# 找不到实习会影响秋招吗 #
1398553次浏览 13624人参与
# 实习简历求拷打 #
19378次浏览 221人参与
# 哪些公司笔/面试难度大? #
6922次浏览 31人参与
# 考研人,我有话说 #
156249次浏览 1208人参与
# 秋招遇到的奇葩面试题 #
101114次浏览 416人参与
# 投格力的你,拿到offer了吗? #
154044次浏览 828人参与
# 作业帮求职进展汇总 #
84647次浏览 558人参与
# 秋招被挂春招仍然能投的公司 #
8422次浏览 110人参与
# 简历当中有水分算不算造假? #
154110次浏览 2250人参与
# 携程工作体验 #
18696次浏览 66人参与
# mt对你说过最有启发的一句话 #
40529次浏览 464人参与
# 秋招被确诊为…… #
277036次浏览 1583人参与
# 国庆前的秋招小结 #
265680次浏览 1718人参与
# 什么是优秀的实习经历 #
10507次浏览 236人参与
# 选实习,你更看重哪方面? #
16041次浏览 269人参与
# 你收到了团子的OC了吗 #
1483556次浏览 11811人参与
# 找不到好工作选择GAP真的丢人吗 #
93505次浏览 1006人参与
# 摸鱼被leader发现了怎么办 #
105845次浏览 667人参与
# 担心入职之后被发现很菜怎么办 #
267245次浏览 1137人参与