题目:
     有这样一个游戏:在一块板上写着一行数,共n个。两个游戏者,轮流从最右或最左取一个数。刚开始,每个游戏者的得分均为零。如果一个游戏者取到一个数,则将该数的值加到该游戏者的得分上,最后谁的得分最高谁就赢了游戏。给出这n个数( 从左往右),问最后两个人的得分(假设第一个人首先取数)。编制程序模拟这种变化。
    请各位高手指点,给点思路或代码(请看清题目再发言)。谢谢!

解决方案 »

  1.   

    LinkedList 板的话可以用这个
    E pollFirst() 
    获取并移除此列表的第一个元素;如果此列表为空,则返回 null。
    E pollLast() 
    获取并移除此列表的最后一个元素;如果此列表为空,则返回 null。 
      

  2.   

    其实是奇、偶数问题
    一块板上写着一行数     //这是一个List
    按下标奇、偶分开       //得到两个List
    循环中依次打印这两个List
      

  3.   

    可以将一行值作为一个list,然后取list的最前或做后一个,取得完后,remove掉。。直到list为空。。
      

  4.   

    public Test{    
        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);
        }
    }