求助|七星彩的一个奖金计算方法。
1084
2024.12.30
2024.12.30
发布于 山东

已知七星彩玩法规则:
1,每期开出一个7位数作为中奖号码,前区6个数字+后区1个数字,
2,前区第一位和第六位每位号码为0-9,后区号码为0-14。
3,用户投注前区第一位和第六位号码为分别最少为1注,最多为10注。后区投注最少为1注,最多为15注。
4,用户命中前区第一位和第六位号码为分别最少为0注,最多为1注。后区命中最少为0注,最多为1注。

给出一个奖金对照表prizes如下:

const prizes = [{ //七星彩奖级配置
	"awards": "一等奖", //奖级
	"condition": ['6+1'],//中奖条件,中前区6码+ 后区1码
    "count": 0,//用户的中奖次数
}, {
	"awards": "二等奖",
	"condition": ['6+0'],  //中前区6码
    "count": 0,//用户的中奖次数
}, {
	"awards": "三等奖",
	"condition": ['5+1'], //中前区任意5码+ 后区1码
    "count": 0,//用户的中奖次数
}, {
	"awards": "四等奖",
	"condition": ['5+0','4+1'],  //中前区任意5码 或 中前区任意4码+后区1码
    "count": 0,//用户的中奖次数
}, {
	"awards": "五等奖",
	"condition": ['4+0','3+1'], //中前区任意4码 或  中前区任意3码+后区1码
    "count": 0,//用户的中奖次数
}, {
	"awards": "六等奖",
	"condition": ['3+0','2+1','1+1','0+1'],  //中前区任意3码 或 中前区任意2码+后区1码 或 中前区任意1码+后区1码 或 中后区1码
    "count": 0,//用户的中奖次数
}];

要求:实现一个calculatePrize方法,该方法接受输入2个数组。分别为用户投注个数数组betList和命中个数数组hitList。考虑多个奖项同时中奖的情况。返回用户的中奖情况。

在线样例1:https://www.sniuw.com/calculator/qxc
在线样例2:https://m.caihongduoduo.com/nqxc/nqxcjsq

测试用例1:

const betList1 = [1,1,1,1,1,1,5];//假设用户投注第一位为1注,第二位为1注,第三位为1注,第四位为1注,第五位为1注,第六位为1注,第七位为5注
const hitList1 = [1,1,1,1,1,1,1];//假设用户命中第一位为1注,第二位为1注,第三位为1注,第四位为1注,第五位为1注,第六位为1注,第七位为1注
const test1 = calculatePrize(betList1,hitList1)

测试用例1应输出:[{"awards": "一等奖","count": 1},{"awards": "二等奖","count":4}]

测试用例2:

const betList2 = [3,4,5,6,3,2,1];//假设用户投注第一位为3注,第二位为4注,第三位为5注,第四位为6注,第五位为3注,第六位为2注,第七位为1注
const hitList2= [0,1,1,1,0,1,0];//假设用户命中第一位为0注,第二位为1注,第三位为1注,第四位为1注,第五位为0注,第六位为1注,第七位为1注
const test2 = calculatePrize(betList2,hitList2)

测试用例2应输出:[{"awards": "五等奖","count": 9},{"awards": "六等奖","count":117}]

测试用例3:

const betList3 = [1,4,2,6,3,2,4];//假设用户投注第一位为1注,第二位为4注,第三位为2注,第四位为6注,第五位为3注,第六位为2注,第七位为4注
const hitList3= [1,1,1,1,0,1,1];//假设用户命中第一位为1注,第二位为1注,第三位为1注,第四位为1注,第五位为0注,第六位为1注,第七位为1注
const test3= calculatePrize(betList3,hitList3)

测试用例3应输出:[{"awards": "三等奖","count": 3},{"awards": "四等奖","count":39},{"awards": "五等奖","count":186},{"awards": "六等奖","count":447}]

评论 (1)