掌桥专利:专业的专利平台
掌桥专利
首页

产品换取方案的生成方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 18:34:06


产品换取方案的生成方法、装置、计算机设备和存储介质

技术领域

本申请涉及大数据技术领域,特别是涉及一种产品换取方案的生成方法、装置、计算机设备、存储介质和计算机程序产品。

背景技术

在相关技术中,通常是通过穷举算法,确定既定虚拟资源数量下能够换取产品的换取方案。由于该过程依赖于计算机的计算能力,从而使得生成产品换取方案耗费的时间较长且计算机的内部资源占用率高。

发明内容

基于此,有必要针对上述技术问题,提供一种能够提高产品换取方案的换取效率的产品换取方案的生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种产品换取方案的生成方法。所述方法包括:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,其中,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

在其中一个实施例中,获取产品类型队列的过程,包括:

确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

在其中一个实施例中,基于目标虚拟资源数量,确定参考虚拟资源数量,包括:

按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在其中一个实施例中,根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,包括:

获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

在其中一个实施例中,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量,包括:

将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

根据最大数量,确定目标数量,目标数量不大于最大数量;

根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

在其中一个实施例中,目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

在其中一个实施例中,根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,包括:

将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

第二方面,本申请还提供了一种产品换取方案的生成装置。所述装置包括:

获取模块,用于获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

第一确定模块,用于基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

第二确定模块,用于根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

第三确定模块,用于根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;其中,最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

上述产品换取方案的生成方法、装置、计算机设备、存储介质和计算机程序产品,获取产品类型队列和目标虚拟资源数量,基于目标虚拟资源数量,确定参考虚拟资源数量,根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量;根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。采用本方法,可以快速地生成产品的换取方案,降低计算器内部资源的占用率,同时还可以提高确定换取方案的效率。

附图说明

图1为一个实施例中产品换取方案的生成方法的应用环境图;

图2为一个实施例中产品换取方案的生成方法的流程示意图;

图3为另一个实施例中产品换取方案的生成方法的流程示意图;

图4为一个实施例中产品换取方案的生成装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的产品换取方案的生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供了一种产品换取方案的生成方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:

201、获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

202、基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

203、根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

204、根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

其中,虚拟资源指的是用于换取目标平台上的产品的资源,虚拟资源可以是对象通过劳动获取,也可以是对象通过其他正常途径获取;比如,虚拟资源可以是公司或电商平台发放给对象的购物券、购物金和福利卡等。目标平台上的产品可以为蚕丝被、牛奶、睡袋、防晒衣、猕猴桃其他用途的物品。

目标虚拟资源数量指的是对象用于从目标平台上换取产品的最大可用虚拟资源,比如购物券、购物金或福利卡的最大金额。产品类型队列指的是在预设条件下从目标平台上获取的产品类型队列,且每种产品类型的相应产品在被换取时的耗费虚拟资源数量已知。

参考虚拟资源数量可以为多个,且每一个参考虚拟资源数量均不大于目标虚拟资源数量;比如,目标虚拟资源数量为A,则参考虚拟资源数量可以为a、b、c、...和A,其中a,b,c均不大于A。此外,每一个参考虚拟资源数量均为整数。

每一个参考虚拟资源均可以作为换取产品时的虚拟资源数量上限。比如,参考虚拟资源是a时,此时换取的所有产品的耗费虚拟资源数量的总和不大于a。

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量指的是:将参考虚拟资源数量作为换取产品时可利用的虚拟资源数量上限,对产品类型队列中排序的前i种类的产品进行产品模拟换取,获得i取值下的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;比如,参考虚拟资源数量为400时,对产品类型队列中排序的前3种类的产品进行产品模拟换取时,所有换取方案中对应的最大的可被耗费虚拟资源数量为395,此时3取值下的最大可被耗费虚拟资源数量为395。

对产品类型队列中排序的前i种类的产品进行产品模拟换取指的是:只能从产品类型队列中排序的前i种类的产品中选择用于进行产品模拟换取的产品;比如,产品类型队列中包括的产品类型总数量N为6,产品类型队列中产品的排序为产品1、产品2、产品3、产品4、产品5、产品6,i为3,则只能从产品1、产品2、产品3三个产品中选择用于进行产品模拟换取的产品。

目标最大可被耗费虚拟资源数量对应的i取值可以有多个,比如目标最大可被耗费虚拟资源数量为490,相应的i的值可以为4、8、14等。

另外,最大可被耗费虚拟资源数量不大于相应的参考虚拟资源数量;比如,以参考虚拟资源数量为5,对产品类型队列(产品类型队列中产品的排序为产品1、产品2、产品3、产品4、产品5、产品6,其中,产品1在被换取时的耗费虚拟资源数量为2,产品2在被换取时的耗费虚拟资源数量为3,产品3在被换取时的耗费虚拟资源数量为1)中排序的前3种类的产品进行产品模拟换取为例,此时获得前3种类相应的最大可被耗费虚拟资源数量应为5,最大可被耗费虚拟资源数量5对应的产品选取方案为:

方案1:选取5件产品3;

方案2:选取1件产品1,选取1件产品2;

方案3:选取2件产品1,选取1件产品3;

方案4:选取1件产品2,选取2件产品1;

方案5:选取1件产品1,选取3件产品1。

比如,以参考虚拟资源数量为10,对产品类型队列(产品类型队列中产品的排序为产品1、产品2、产品3、产品4、产品5,其中,产品1在被换取时的耗费虚拟资源数量为7,产品2在被换取时的耗费虚拟资源数量为2,)中排序的前2种类的产品进行产品模拟换取为例,此时获得前2种类相应的最大可被耗费虚拟资源数量应为9,此时最大可被耗费虚拟资源数量9对应的产品选取方案为:方案1:选取产品1一件,选取产品2一件。

以动态矩阵dp[i][j]以及路径矩阵path[i][j]对本方案进行举例说明,其中,动态矩阵dp[i][j]表示对前i种类产品进行产品模拟换取不大于参考拟资源数量j时的虚拟资源数量上限;路径矩阵path[i][j]用于确定最终的产品换取方案,通过路径矩阵path[i][j]可以判断dp[i][j]对应的产品换取方案中是否有第i种类产品,若dp[i][j]对应的产品换取方案中包含第i种类产品,则path[i][j]=1,若dp[i][j]对应的产品换取方案中不包含第i种类产品,则path[i][j]=0;i为从产品类型队列中选择排序的前i种类的产品(i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量,0

当i=1时,dp[1][j]表示对前1种类产品进行产品模拟换取不大于参考拟资源数量j时的虚拟资源数量上限,第1种类产品的虚拟资源数量上限为k倍产品1的v(1)(k*v(1)<=j);也就是说,对前1种类产品进行产品模拟换取不大于参考拟资源数量j时的虚拟资源数量上限,是由j决定的,即dp[1][j]=[j/v(1)]*v(1),其中,[j/v(1)]表示对j除以v(1)后得到的结果进行向下取整,(比如j=10,v(1)为3,则[j/v(1)]=[10/3]=3)。当j=0时,表示参考虚拟资源数量为0,那对于所有的i(0<=i<=N,N为产品类型队列中包括的产品类型总数量),即dp[i][0]均应为0,通过此方法,可以确定dp[1][j]以及dp[i][0],maxdp[i]为i取值下最大可被耗费虚拟资源数量。

当i=1时,从dp[1][1]、dp[1][2]、dp[1][3]、...、dp[1][M]中,确定最大值作为i=1取值下最大可被耗费虚拟资源数maxdp[i=1],当i=2时,从dp[2][1]、dp[2][2]、dp[2][3]、...、dp[2][M]中,确定最大值作为i=2取值下最大可被耗费虚拟资源数量maxdp[i=2],...,当i=N时,从dp[N][1]、dp[N][2]、dp[N][3]、...、dp[N][M]中,确定最大值maxdp[i=N]作为i=N取值下最大可被耗费虚拟资源数量maxdp[i=N],最后从maxdp[i=1],maxdp[i=2],...,maxdp[i=N]中选出最大值作为目标最大可被耗费虚拟资源数量。

在确定i取值下的最大可被耗费虚拟资源数量的同时,i取值下其他可被耗费的虚拟资源数量也将被确定,即maxdp[i]确定同时,dp[i][h](h=[1,2,...,M])也被确定。

值得一提的是,在获得i相应的最大可被耗费虚拟资源数量的同时,i相应的最大可被耗费虚拟资源数量的产品组合也被确定。比如,i=2时,从dp[2][1]、dp[2][2]、dp[2][3]、...、dp[2][M]中确定maxdp[2]=dp[2][5],与此同时,dp[2][5]对应产品组合包括方案1:选取5件产品3;方案2:选取1件产品1,选取1件产品2;方案3:选取2件产品1,选取1件产品3;方案4:选取1件产品2,选取2件产品1;方案5:选取1件产品1,选取3件产品1,则maxdp[2]所对应的产品换取方案为上述方案1-方案5。

路径矩阵path[i][j](0=maxdp[i-1],maxdp[i]>=maxdp[i-2],...,且maxdp[i]>=maxdp[1])时,此时将maxdp[i](以maxdp[i]=dp[6][10]为例)对应的产品换取方案存储至path[6][10]对应的存储空间中,且令path[6][10]=1;若maxdp[i]小于前i-1、i-2、...、1中任一值下的最大可被耗费虚拟资源数量(即maxdp[i]

具体地,在确定目标最大可被耗费虚拟资源数量之后,从最大可被耗费虚拟资源数量对应的路径矩阵中,即将path[i][j]=1的相应的存储空间中确定相应的产品方案,作为最终的产品换取方案。

比如,目标虚拟资源数量为500,产品类型队列中包括的产品类型总数量N为20,maxdp[i=1],maxdp[i=2],...,maxdp[i=20]中目标最大可被耗费虚拟资源数量为490,其中,maxdp[i=4]=dp[4][495]=490,maxdp[8]=dp[8][491]=490、maxdp[14]=dp[14][500]=490,则令path[4][495]=1,path[8][491]=1、path[14][500]=1,除path[4][495]、path[8][491]=1、path[14][500]之外的dp[i][j]均为0;则将path[4][495]、path[8][491]和path[14][500]对应的存储空间中产品换取方案作为最终的产品换取方案。

本发明实施例提供的方法,基于目标虚拟资源数量,确定参考虚拟资源数量;将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i种类的产品进行产品模拟换取,获得i相应的最大可被耗费虚拟资源数量通过每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案,通过本方法,可以快速地确定产品换取方案,无需人工确定产品换取方案,从而可以提高确定换取方案的效率。此外,通过路径矩阵path[i][j]对应的存储空间存储相应的产品换取方案,避免过多的使用计算机内部资源,从而可以降低计算机内部资源的占用率;而且在选取最终的产品换取方案时可以直接从路径矩阵对应的存储空间中查找,提高了查找最终产品换取方案的效率,从而提高了计算机的处理效率。

结合上述实施例的内容,在一个实施例中,获取产品类型队列的过程,包括:

确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

具体地,参考产品类型包括多个产品类型,从参考产品类型中确定预设数量的产品类型的对象可以是持有目标虚拟资源的对象,也可以是产品所在平台推荐的。参考产品类型包括产品A、产品B、产品C、产品D、产品E、产品F、产品G、产品H、产品H,预设数量为5,从参考产品类型中依次选出产品A、产品E、产品F、产品G、产品H,作为产品类型队列,产品类型队列的排列顺序与选出顺序相同,即产品类型队列为产品A、产品E、产品F、产品G、产品H。

本发明实施例提供的方法,通过从参考产品类型中确定预设数量的参考产品类型,可以得到产品类型队列。

结合上述实施例的内容,在一个实施例中,基于目标虚拟资源数量,确定参考虚拟资源数量,包括:

按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在根据预设下降梯度,对目标虚拟资源数量作递进下降处理,得到参考虚拟资源数量时,下降梯度为整数。比如,目标虚拟资源数量为500,则下降梯度可以为1,相应地,参虚拟资源数量分别为500、499、498、...、2、1、0。

本发明实施例提供的方法,通过预设下降梯度,可以确定多个参考虚拟资源数量,从而可以根据多个参考虚拟资源数量确定每种i取值下的最大可被耗费虚拟资源数量。

结合上述实施例的内容,在一个实施例中,根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,包括:

获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

其中,根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量指的是:将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i种类的产品进行产品模拟换取时,获得i相应的最大可被耗费虚拟资源数量。

第一最大可被耗费虚拟资源数量指的是:获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的最大可被耗费虚拟资源数量,将该相应的最大可被耗费虚拟资源数量作为第一最大可被耗费虚拟资源数量。

第二最大可被耗费虚拟资源数量指的是:在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品以及第i种产品进行产品模拟换取时,所获得相应的最大可被耗费虚拟资源数量,将该相应的最大可被耗费虚拟资源数量作为第二最大可被耗费虚拟资源数量。

将对产品类型队列中排序的前i-1种类进行产品模拟换取时,所确定的最大可被耗费虚拟资源数量为作为第一最大可被耗费虚拟资源数量;比如maxdp[i-1]=dp[i-1][H],0<=H<=M。

对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第一最大可被耗费虚拟资源数量为maxdp[i-1],若对产品类型队列中排序的前i种类的产品进行产品模拟换取,所获得相应的第一最大可被耗费虚拟资源数量maxdp[i]相应的产品换取方案中并没有选中第i种产品,此时maxdp[i-1]=maxdp[i];比如,对产品类型队列(产品1、产品2、产品3、产品4、产品5)中排序的前3种类的产品进行产品模拟换取时,所获得相应的第一最大可被耗费虚拟资源数量为maxdp[3],对产品类型队列中排序的前4种类的产品进行产品模拟换取时,所获得相应的第一最大可被耗费虚拟资源数量为maxdp[4],最大可被耗费虚拟资源数量为maxdp[4]对应的产品方案为:方案1:2件产品1,3件产品3;方案2:2件产品2,2件产品3;即maxdp[4]对应的所有产品选取方案中,均没有选中产品4,此时,maxdp[4]=maxdp[3],即若对产品类型队列中排序的前i种类的产品进行产品模拟换取时,所获得与i相应的第一最大可被耗费虚拟资源数量为maxdp[i]对应的产品选取方案中均没有包括产品4,则对产品类型队列中排序的前i种类的产品进行产品模拟换取时所获得与i相应的第一最大可被耗费虚拟资源数量,与对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时所获得与i相应的第一最大可被耗费虚拟资源数量相同。

具体地,在确定换取第i种产品的情况下,获取将每一个参考虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品以及第i种产品进行产品模拟换取时,获得相应的参考最大可被耗费虚拟资源数量,即每一个参考虚拟资源数量对应一个参考最大可被耗费虚拟资源数量。从多个参考最大可被耗费虚拟资源数量中确定最大值作为确定换取第i种产品的情况下的第二最大可被耗费虚拟资源数量。

以动态矩阵dp[i][j]进行举例说明,其中,i为从产品类型队列中选择排序的前i种类的产品(i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量,即0

参考虚拟资源数量为0时,换取产品时的虚拟资源数量上限为dp[5][0];参考虚拟资源数量为1时,换取产品时的虚拟资源数量上限为dp[5][1];参考虚拟资源数量为2时,换取产品时的虚拟资源数量上限为dp[5][2];...;参考虚拟资源数量为499时,换取产品时的虚拟资源数量上限为dp[5]499];参考虚拟资源数量为2时,换取产品时的虚拟资源数量上限为dp[5][500];其中,dp[5][490]为dp[5][s](s=[0,1,2,...,499,500])中的最大值,则dp[5][490]为确定换取第5种产品的情况下的第二最大可被耗费虚拟资源数量。

本发明实施例提供的方法,通过产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量以及换取第i种产品进行产品模拟换取时所获得相应的第二最大可被耗费虚拟资源数量,可以确定与i相应的最大可被耗费虚拟资源数量,无需计算器再次计算前i-1种类的产品相应的第一最大可被耗费虚拟资源数量对应的产品选取方案,可以减少计算机因运行所消耗的内部资源,从而减少计算机的内部资源的占用率。

结合上述实施例的内容,在一个实施例中,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量,包括:

将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

根据最大数量,确定目标数量,目标数量不大于最大数量;

根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量;

将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

其中,将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量,包括:

k=[j/v(i)](1)(1);

公式(1)中,j为参考虚拟资源数量,v(i)为换取第i种产品时的耗费虚拟资源数量,k为换取的第i种产品的数量。[j/v(i)]表示对j/v(i)进行向下取整,比如,参考虚拟资源数量为50,换取第i种产品时的耗费虚拟资源数量为6,则k=[50/6]=8,比如,参考虚拟资源数量为11,换取第i种产品时的耗费虚拟资源数量为3,则k=[11/3]=3。

获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量,指的是获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得i相应的目标数量的第三最大可被耗费虚拟资源数量。

以动态矩阵dp[i][j]进行说明,其中,i为从产品类型队列中选择排序的前i种类的产品(i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量,即0

获取1件第i种产品,那么获取第i-1种产品虚拟资源不大于P-v(i),即剩余虚拟资源数量P-v(i),在P-v(i)剩余虚拟资源的限制下的最大值加上1件第i种产品的相应的耗费虚拟资源数量,即dp[i][j]=dp[i-1][j-v(i)]+v(i);dp[i-1][j-1*v(i)]为i相应的目标数量1的第三最大可被耗费虚拟资源数量,1*v(i)为i相应的目标数量1相应的中间虚拟资源数量,将i相应的目标数量1的第三最大可被耗费虚拟资源数量与i相应的目标数量1的中间虚拟资源数量之和,作为相应的第四最大可被耗费虚拟资源数量,即dp[i-1][j-v(i)]+v(i)为i相应的目标数量1的第四最大可被耗费虚拟资源数量;

获取2件第i种产品,那么获取第i-1种产品虚拟资源不大于P-2*v(i),即剩余虚拟资源数量P-2*v(i),则在P-2*v(i)的限制下的最大值加上2件第i种产品的相应的耗费虚拟资源数量,即dp[i][j]=dp[i-1][j-2*v(i)]+2*v(i);dp[i-1][j-2*v(i)]为i相应的目标数量2的第三最大可被耗费虚拟资源数量,2*v(i)为i相应的目标数量2的中间虚拟资源数量,将i相应的目标数量2的第三最大可被耗费虚拟资源数量与i相应的目标数量2的中间虚拟资源数量之和,作为相应的第四最大可被耗费虚拟资源数量,即dp[i-1][j-2*v(i)]+2*v(i)为i相应的目标数量2的第四最大可被耗费虚拟资源数量;...;

获取k件第i种产品,那么获取第i-1种产品虚拟资源不大于P-k*v(i),即剩余虚拟资源数量P-k*v(i),则在P-k*v(i)的限制下的最大值加上2件第i种产品的相应的耗费虚拟资源数量,即dp[i][j]=dp[i-1][j-k*v(i)]+k*v(i);dp[i-1][j-k*v(i)]为i相应的目标数量k的第三最大可被耗费虚拟资源数量,k*v(i)为i相应的目标数量k的中间虚拟资源数量。将i相应的目标数量k的第三最大可被耗费虚拟资源数量与i相应的目标数量k的中间虚拟资源数量之和,作为相应的第四最大可被耗费虚拟资源数量,即dp[i-1][j-k*v(i)]+k*v(i)为i相应的目标数量k的第四最大可被耗费虚拟资源数量;

将i相应的所有目标数量的第四最大可被耗费虚拟资源数量(即dp[i-1][j-v(i)]+v(i)、dp[i-1][j-2*v(i)]+2*v(i)、...、dp[i-1][j-k*v(i)]+k*v(i))中的最大值作为换取目标数量个第i种产品时的第二最大可被耗费虚拟资源数量。即i相应的第二最大可被耗费虚拟资源数量为max(dp[i-1][P-v(i)]+v(i),dp[i-1][P-2*v(i)]+2*v(i),...,dp[i-1][P-k*v(i)]+k*v(i))。

具体地,将目标数量个相应的第四最大可被耗费虚拟资源数量中的最大值,作为相应的第二最大可被耗费虚拟资源数量。

本发明实施例提供的方法,通过确定第i种产品可被换取的最大数量,从而可以确定第i种产品可被换取的目标数量,从而可以根据目标数量确定每一目标数量相应的第三最大可被耗费虚拟资源数量,进而根据每一目标数量相应的第三最大可被耗费虚拟资源数量,确定与i相应的第四最大可被耗费虚拟资源数量。

结合上述实施例的内容,在一个实施例中,目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

其中,最小单位指的是目标虚拟资源数量的最小单位,本实施例中,目标虚拟资源数量的最小单位为1,当预设下降梯度为1时,可以用于确定参考虚拟资源数量。

当预设下降梯度为第i种产品相应的耗费虚拟资源数量,可以用于计算剩余虚拟资源数量。

结合上述实施例的内容,

dp[i][j]=max(dp[i-1][j],dp[i-1][j-1*v(i)]+v(i),dp[i-1][j-2*v(i)]+2*v(i),...,dp[i-1][j-k*v(i)]+k*v(i))(2);

令j=j-v(i)时,则

dp[i][j-v(i)]=max(dp[i-1][j-v(i)],dp[i-1][j-2*v(i)]+v(i),dp[i-1][j-3*v(i)]+2*v(i),...,dp[i-1][j-k*v(i)]+(k-1)*v(i))(3);

上述公式(2)与(3)中,公式(2)中dp[i-1][j-2*v(i)]+2*v(i)与公式(3)中的dp[i-1][j-2*v(i)]+v(i)相差v(i),公式(2)中dp[i-1][j-3*v(i)]+3*v(i)与公式(3)中的dp[i-1][j-3*v(i)]+2*v(i)相差v(i),...,公式(2)中dp[i-1][j-k*v(i)]+k*v(i)与公式(3)中的dp[i-1][j-k*v(i)]+(k-1)v(i)相差v(i),因此,dp[i][j]=max max(dp[i-1][j],dp[i][j-v(i)]+v(i))。

具体地,当参考虚拟资源数量为P时,dp[i][P]=max(dp[i-1][P],dp[i-1][P-v(i)]+v(i)),即i取值下每一个参考虚拟资源数量的最大可被耗费虚拟资源数量可以直接从i-1相应的第一最大可被耗费虚拟资源数量以及i相应的目标数量1中确定。

本发明实施例提供的方法,通过i相应的参考虚拟资源数量、i种产品类型的相应产品在被换取时的耗费虚拟资源数量、以及i-1相应的第一最大可被耗费虚拟资源数量,可以确定i取值下每一个参考虚拟资源数量的最大可被耗费虚拟资源数量,可以减少计算多个目标数量对应的中间虚拟资源数量,从而减少计算时间,从而提高产品换取方案的生成效率。

结合上实施例的内容,在一个实施例中,根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,包括:

将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

具体地,每种i取值对应一个最大可被耗费虚拟资源数量,从所有的最大可被耗费虚拟资源数量中选出最大值作为目标最大可被耗费虚拟资源数量。比如,i<6,i=1对应的最大可被耗费虚拟资源数量为480,i=2对应的最大可被耗费虚拟资源数量为490,i=3对应的最大可被耗费虚拟资源数量为490,i=4对应的最大可被耗费虚拟资源数量为495,i=5对应的最大可被耗费虚拟资源数量为495,则目标最大可被耗费虚拟资源数量为495。

本发明实施例提供的方法,通过确定每一个i取值下的最大可被耗费虚拟资源数量,可以确定目标最大可被耗费虚拟资源数量,并基于目标最大可被耗费虚拟资源数量对应的产品换取方案,确定最终的产品换取方案。

结合上实施例的内容,在一个实施例中,一种产品换取方案的生成,如图3所示,包括:

301、从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

302、获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

303、基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

304、根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

305、根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

本发明实施例提供的方法,通过每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案,无需人工确定产品换取方案,从而可以提高确定换取方案的效率。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的产品换取方案的生成方法的产品换取方案的生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个产品换取方案的生成装置实施例中的具体限定可以参见上文中对于产品换取方案的生成方法的限定,在此不再赘述。

在一个实施例中,如图4所示,提供了一种产品换取方案的生成装置,包括:获取模块401、第一确定模块402、第二确定模块403和第三确定模块404,其中:

获取模块401,用于获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

第一确定模块402,用于基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

第二确定模块403,用于根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

第三确定模块404,用于根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

在一个实施例中,获取模块401,包括:

第一确定子模块,用于确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

在一个实施例中,第一确定模块402,包括:

处理子模块,用于按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在一个实施例中,第二确定模块403,包括:

第一获取子模块,用于获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

第二获取子模块,用于在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

第二确定子模块,用于确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

在一个实施例中,第二获取子模块,包括

第一确定子单元,用于将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

第二确定子单元,用于根据最大数量,确定目标数量,目标数量不大于最大数量;

计算子单元,用于根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

获取子单元,用于获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量;

求和子单元,用于将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

第三确定子单元,用于根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

在一个实施例中,第二获取子模块,还包括:目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

在一个实施例中,第三确定模块404,包括:

第三确定子模块,用于将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

上述产品换取方案的生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口,其中,处理器、存储器和输入/输出接口通过系统总线连接。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种产品换取方案的生成方法。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

根据最大数量,确定目标数量,目标数量不大于最大数量;

根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量;

将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

根据最大数量,确定目标数量,目标数量不大于最大数量;

根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量;

将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

获取产品类型队列和目标虚拟资源数量,并确定产品类型队列中每种产品类型的相应产品在被换取时的耗费虚拟资源数量;

基于目标虚拟资源数量,确定参考虚拟资源数量,参考虚拟资源数量不大于目标虚拟资源数量;

根据参考虚拟资源数量,确定产品类型队列中排序的前i种类的产品相应的最大可被耗费虚拟资源数量,其中,i为不大于N的正整数,N为产品类型队列中包括的产品类型总数量;

根据每种i取值下的最大可被耗费虚拟资源数量,确定目标最大可被耗费虚拟资源数量,并将目标最大可被耗费虚拟资源数量所对应的产品换取方案作为最终的产品换取方案;最大可被耗费虚拟资源数量不大于参考虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

确定参考产品类型;从参考产品类型中确定预设数量的产品类型,并将预设数量的参考产品类型进行排列,得到产品类型队列。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

按照预设下降梯度,对目标虚拟资源数量作递进下降处理,将每次降低结果作为参考虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品相应的第一最大可被耗费虚拟资源数量;

在确定换取第i种产品的情况下,获取将参考虚拟资源数量作为换取产品时的虚拟资源数量上限,产品类型队列中排序的前i-1种类的产品以及第i种产品相应的第二最大可被耗费虚拟资源数量;

确定第一最大可被耗费虚拟资源数量与第二最大可被耗费虚拟资源数量中的较大值,作为i相应的最大可被耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将参考虚拟资源数量作为上限,根据第i种产品相应的耗费虚拟资源数量,确定第i种产品可被换取的最大数量;

根据最大数量,确定目标数量,目标数量不大于最大数量;

根据第i种产品相应的耗费虚拟资源数量,计算在换取目标数量个第i种产品时所需耗费的中间虚拟资源数量,并获取耗费中间虚拟资源数量后参考虚拟资源数量所剩余的剩余虚拟资源数量;

获取将剩余虚拟资源数量作为换取产品时的虚拟资源数量上限,对产品类型队列中排序的前i-1种类的产品进行产品模拟换取时,所获得相应的第三最大可被耗费虚拟资源数量;

将第三最大可被耗费虚拟资源数量与相应的中间虚拟资源数量间的和值,作为在换取目标数量个第i种产品时,相应的第四最大可被耗费虚拟资源数量;

根据目标数量个相应的第四最大可被耗费虚拟资源数量,确定相应的第二最大可被耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:目标数量为1,预设下降梯度为虚拟资源的最小单位或者为第i种产品相应的耗费虚拟资源数量。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将每种i取值下的最大可被耗费虚拟资源数量中的最大值确定为目标最大可被耗费虚拟资源数量。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

技术分类

06120115616958