["200","","100","300","" ,"" ,"200","" ]
当遇到这样的数组时,将2/200且分给它后面的空格,3/300同理,类似与将不是100的数 都平分一下。
["100","100","100","100","100","100","100","100"]

解决方案 »

  1.   

    遍历数组   元素/100  等于几就往这个下标位置insert 几个100  
      

  2.   


                List<int> list= Enumerable.Repeat(100, 10).ToList();
                list.ForEach(p => Console.WriteLine(p));
      

  3.   

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Globalization;
    using System.IO;
    using System.Text.RegularExpressions;namespace ConsoleApplication2
    {
        class Program
        {
            static void Main(string[] args)
            {
                string[] strarray =new string[]{"2","","100","","","","200","","",""};
                List<int> indexs = new List<int>();
                for (int i = 0; i < strarray.Length;i++ )
                {
                    if (strarray[i] != "")
                    {
                        indexs.Add(i);
                    }
                }
                List<int> indexe = new List<int>();
                for (int i = 1; i < indexs.Count; i++)
                {
                    indexe.Add(indexs[i]);
                }
                indexe.Add(strarray.Length);
                int size = 0;
                for (int i = 0; i < indexs.Count; i++)
                {
                    size = indexe[i] - indexs[i]-1;
                    int result = int.Parse(strarray[indexs[i]]) / (size+1);
                    for (int j = indexs[i]; j < indexe[i]; j++)
                    {
                        strarray[j] = result.ToString();
                    }
                }
                foreach (string s in strarray)
                {
                    Console.Write(s + "  ");
                }
            }
        }
    }
    //个人不太懂算法!~。
    //1 1 25 25 25 25 50 50 50 50
      

  4.   

    string[] str = new string[] { "100", "200", "400", "800" };
            int sum = 0;
            foreach (string s in str)
            {
                sum += Convert.ToInt32(s) / 100;
            }
            List<string> lt = new List<string>();
            for (int i = 0; i < sum; i++)
            {
                lt.Add("100");
            }