SSL_2293--暗黑游戏(动规练习题)

题目描述


暗黑游戏中,装备直接决定玩家人物的能力。可以使用Pg和Rune购买需要的物品。暗黑市场中的装备,每件有不同的价格(Pg和Rune)、能力值、最大可购买件数。Kid作为暗黑战网的一个玩家,当然希望使用尽可能少的Pg和Rune购买更优的装备,以获得最高的能力值。请你帮忙计算出现有支付能力下的最大可以获得的能力值。



输入格式

第一行,三个整数N,P,R,分别代表市场中物品种类,Pg的支付能力和Rune的支付能力。
  第2..N+1行,每行四个整数,前两个整数分别为购买此物品需要花费的Pg,Rune,第三个整数若为0,则说明此物品可以购买无数件,若为其他数字,则为此物品可购买的最多件数(S),第四个整数为该装备的能力值。


输出格式

仅一行,一个整数,最大可获得的能力值。


样例输入


3 10 10
5 3 0 110
4 3 4 120
2 3 1 130



样例输出 


370

思路

本题可以理解为二维费用+混合背包问题,可以将Pg的支付能力理解为重量,将Rune理解为体积就可以了。

代码(C++)
#include<cstdio>
#include<cstring>
#define sr c=getchar()  
#define input read()  
#define pd (c<'0'||c>'9')  
#define fk f=f*10+c-48  
#define ps if (c=='-') d=-1  
using namespace std;
int f[101][101];int v,u,k;
int a[10001],c[10001],b[10001],s[10001];
int max(int x,int y)
{
	return x>y?x:y;
}
int read()//输入快速流
{
	char c;int d=1,f=0;
	while (sr,pd) ps; fk;
	while (sr,!pd) fk;
	return d*f;
}
void write(int x)//输出快速流
{
	if (!x) return;
	write(x/10);
	putchar(x%10+48);
}
int main()
{
	f[0][0]=0;
	k=input;v=input;u=input;
	for (int i=1;i<=k;i++)
	{
		a[i]=input;//重量
		b[i]=input;//体积
		s[i]=input;//数量
		c[i]=input;//价值
	}
	for (int i=1;i<=k;i++)
	 if (!s[i])//如果是0则是无穷背包
	 for (int j=0;j<=v;j++)
	  for (int l=0;l<=u;l++)
	  {
	  	int t1=j+a[i],t2=l+b[i];
	  	if (t1>v) continue;
	  	if (t2>u) continue;
	  	if (f[t1][t2]<f[j][l]+c[i]) f[t1][t2]=f[j][l]+c[i];
	  }
	 else
	 for (int o=1;o<=s[i];o++)//多重背包,也可以二进制优化,这里用的是朴素算法
	  for (int j=v;j>=0;j--)
	   for (int l=u;l>=0;l--)
	   {
	  	int t1=j+a[i],t2=l+b[i];
	  	if (t1>v) continue;
	  	if (t2>u) continue;
	  	if (f[t1][t2]<f[j][l]+c[i]) f[t1][t2]=f[j][l]+c[i];
	  }
	write(f[v][u]);
}





根据提供的引用内容,你遇到了两个不同的问题。第一个问题是在使用tidevice安装iOS adhoc包时报错ssl.SSLError: [SSL: NO_CIPHERS_AVAILABLE] no ciphers available (_ssl.c:997)[^1]。第二个问题是在使用httpie时报错ImportError: cannot import name ‘DEFAULT_CIPHERS‘ from ‘urllib3.util.ssl_[^2]。 对于第一个问题,报错信息表明SSL连接中没有可用的密码套件。这可能是由于系统缺少所需的密码套件导致的。为了解决这个问题,你可以尝试以下方法: 1. 确保你的系统已经安装了最新版本的OpenSSL库。 2. 更新你的Python版本,以确保你使用的是最新的SSL库。 3. 检查你的系统是否有任何安全软件或防火墙,它们可能会干扰SSL连接。尝试禁用它们并重新运行程序。 对于第二个问题,报错信息表明在导入urllib3.util.ssl_模块时找不到DEFAULT_CIPHERS。这可能是由于你使用的httpie版本与urllib3库版本不兼容导致的。为了解决这个问题,你可以尝试以下方法: 1. 确保你的httpie和urllib3库都是最新版本。你可以使用pip命令来更新它们: ```shell pip install --upgrade httpie urllib3 ``` 2. 如果你已经安装了最新版本的httpie和urllib3库,但问题仍然存在,那么可能是由于其他依赖项的冲突导致的。你可以尝试卸载并重新安装httpie和urllib3库: ```shell pip uninstall httpie urllib3 pip install httpie urllib3 ``` 如果以上方法都无法解决问题,你可以尝试在httpie的官方GitHub页面上提交一个issue,向开发者寻求帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值