注意:桌上球的数量通常与传统的斯诺克不同。
斯诺克的基本规则如下:
1、彩球共有8种颜色:红(1分)、黄(2分)、绿(3分)、棕(4分)、蓝(5分)、粉红(6分)、黑(7分)、白(主球,控制白球击打其它球)。
2、当台面上有红球时,必须先击打一颗红球,然后才可以且只能击打一颗彩球(不包括红球),此时已落入袋中的彩球将被放回台面上,并重复上述过程。
3. 按规则2击完彩球(红球除外)后,发现没有红球时,应按分数由低到高的顺序将红球击入袋中。
输入格式:
输入只有一行,包含7个用空格分隔的整数,分别为当前棋盘上红、黄、绿、棕、蓝、粉色和黑球的数量。
输出格式:
输出只有一行,共1个整数,代表小李可以获得的最高分数。
示例输入:
2 0 1 0 3 0 2
示例输出:
48
代码长度限制
16 千字节
时限
1000 毫秒
内存限制
128 MB
堆栈限制
8192 千字节
#include
using namespace std;
int main() {
int t[10],w[10]= {1,2,3,4,5,6,7};
for(int i=0; i<7; i++) {
cin>>t[i];
}
int maxx=0;
for(int i=1; i<7; i++) {
if(t[i]>0) { //除了红球外其他的球有没有
maxx=max(w[i],maxx); //从红球外一个球的最大值
}
}
int sum=t[0]*maxx;//因为有红球时可以击打分值最大的球
if(maxx==0) { // 如果最大值等于0说明没有彩球那就代表着只能击打红球得一分
cout<<1;
return 0;
}
for(int i=0; i<7; i++) { //除了红球外还有其他彩球
sum+=(t[i]*w[i]); //把所以球的值加起来就ok了
}
cout<