已知七星彩玩法规则:
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}]