题目:
有这样一个游戏:在一块板上写着一行数,共n个。两个游戏者,轮流从最右或最左取一个数。刚开始,每个游戏者的得分均为零。如果一个游戏者取到一个数,则将该数的值加到该游戏者的得分上,最后谁的得分最高谁就赢了游戏。给出这n个数( 从左往右),问最后两个人的得分(假设第一个人首先取数)。编制程序模拟这种变化。
请各位高手指点,给点思路或代码(请看清题目再发言)。谢谢!
有这样一个游戏:在一块板上写着一行数,共n个。两个游戏者,轮流从最右或最左取一个数。刚开始,每个游戏者的得分均为零。如果一个游戏者取到一个数,则将该数的值加到该游戏者的得分上,最后谁的得分最高谁就赢了游戏。给出这n个数( 从左往右),问最后两个人的得分(假设第一个人首先取数)。编制程序模拟这种变化。
请各位高手指点,给点思路或代码(请看清题目再发言)。谢谢!
E pollFirst()
获取并移除此列表的第一个元素;如果此列表为空,则返回 null。
E pollLast()
获取并移除此列表的最后一个元素;如果此列表为空,则返回 null。
一块板上写着一行数 //这是一个List
按下标奇、偶分开 //得到两个List
循环中依次打印这两个List
public static void main(String[] args){
final int n = 10;//
int[] number = new int[n];
int left = 0;
int right = 0;
int i=0;j=n-1; if(n==1){
left=number[n-1];//只有一个数
}
else{
for(int i=0; i<number.length/2;i++){//把数组分成左右两段,各取左右
left+=number[i];
right+=number[n-1-i];
}
}
System.out.println("甲总数:"+left);
System.out.println("已总数:"+right);
}
}