已知七星彩玩法规则:
1,每期开出一个7位数作为中奖号码,前区6个数字+后区1个数字,
2,前区第一到第六位每位号码为0-9,后区第七位号码为0-14。
3,用户在每个位置上最少投注一个号码。
给出一个奖金对照表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:
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}]