当前位置: 首页>>代码示例>>C#>>正文


C# Line.Select方法代码示例

本文整理汇总了C#中Line.Select方法的典型用法代码示例。如果您正苦于以下问题:C# Line.Select方法的具体用法?C# Line.Select怎么用?C# Line.Select使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Line的用法示例。


在下文中一共展示了Line.Select方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Calculate

            public void Calculate()
            {
                {
                    var x1 = nums[0];
                    
                    for (int i = 1; i < nums.Count; i++)
                    {
                        var x2 = nums[i];
                        foreach (var x3 in nums.Where(x => x != x1 && x != x2))
                        {
                            foreach (var x4 in nums.Where(x => x != x1 && x != x2 && x != x3))
                            {
                                var x5 = nums.Find(x => x != x1 && x != x2 && x != x3 && x != x4);
                                var lines = new Line[5];
                                lines[0] = new Line(x1, x2);
                                lines[1] = new Line(x2, x3);
                                lines[2] = new Line(x3, x4);
                                lines[3] = new Line(x4, x5);
                                lines[4] = new Line(x5, x1);

                                lines[0].Next = lines[1];
                                lines[1].Next = lines[2];
                                lines[2].Next = lines[3];
                                lines[3].Next = lines[4];
                                lines[4].Next = lines[0];

                                if(lines.Select(x => x.InnerTotal).Distinct().Count() < 5)
                                    continue;

                                var min = lines.Min(x => x.InnerTotal);

                                bool isOk = true;
                                foreach (var num in all.Except(nums))
                                {
                                    var first = lines.FirstOrDefault(x => x.InnerTotal + num == min + 10);
                                    if(first == null)
                                    {
                                        isOk = false;
                                        break;
                                    }

                                    first.Insert(num);
                                }

                                if(isOk)
                                {
                                    
                                    list.Add(lines);
                                }
                            }
                        }
                    }

                }
            }
开发者ID:david--liu,项目名称:code_kata,代码行数:55,代码来源:Problem68.cs

示例2: Main

        public static void Main(string[] args)
        {
            if (4 != args.Length)
            {
                Console.WriteLine(
            @"laughing-octo-ironman: Breaks a text file up into many xml documents. Creates a nifty coding challenge!

            Usage: laughing-octo-ironman [text file] [template xml] [seed] [destination]

             [text file]:    A text file to break up, each line will result in a new
                     xml file with links to other lines

             [template xml]: An xml file to use as a template. Must have a tag with
                     its text contents @[email protected] for the line, @[email protected] for
                     the line number, and many @[email protected] for ids of other lines

             [seed]          A seed for the random number generator

             [destination]   Where to place the generated files

            ");

                return;
            }

            try
            {
                var textFilePath = args[0];
                var templateXmlPath = Path.GetFullPath(args[1]);
                var extension = Path.GetExtension(templateXmlPath);
                var seedText = args[2];
                var destinationPath = Path.GetFullPath(args[3]);

                int seed;
                try
                {
                    seed = int.Parse(seedText);
                }
                catch
                {
                    Console.WriteLine("Can not parse seed: {0}", seedText);
                    return;
                }

                var random = new Random(seed);

                var textFile = File.ReadAllLines(textFilePath);

                var lines = new Line[textFile.Length];

                for (var ctr = 0; ctr < textFile.Length; ctr++)
                {
                    var line = new Line(
                        number: ctr,
                        contents: textFile[ctr].Replace("\r", string.Empty).Replace("\n", string.Empty),
                        random: random);

                    lines[ctr] = line;
                }

                var templateXml = new XmlDocument();
                templateXml.Load(templateXmlPath);

                var lineNode = GetNode("@[email protected]", templateXml.ChildNodes);
                var lineNumberNode = GetNode("@[email protected]", templateXml.ChildNodes);
                var idNodes = GetNodes("@[email protected]", templateXml.ChildNodes).ToArray();

                if (0 == idNodes.Length)
                {
                    throw new Exception("There are no nodes with contents @[email protected]");
                }

                var remainingIds = new HashSet<string>[idNodes.Length];
                for (var ctr = 0; ctr < idNodes.Length; ctr++)
                {
                    remainingIds[ctr] = new HashSet<string>(lines.Select(line => line.Id));
                }

                foreach (var line in lines)
                {
                    lineNode.InnerText = line.Contents;
                    lineNumberNode.InnerText = line.Number.ToString();

                    for (var ctr = 0; ctr < idNodes.Length; ctr++)
                    {
                        var idIndex = random.Next(0, remainingIds[ctr].Count);
                        var id = remainingIds[ctr].ElementAt(idIndex);
                        remainingIds[ctr].Remove(id);
                        idNodes[ctr].InnerText = id;
                    }

                    var xmlWriterSettings = new XmlWriterSettings()
                    {
                        Indent = true,
                        IndentChars = "\t",
                        NewLineChars = "\n"
                    };

                    using (var xmlWriter = XmlWriter.Create(Path.Combine(destinationPath, line.Id + extension), xmlWriterSettings))
                    {
//.........这里部分代码省略.........
开发者ID:GWBasic,项目名称:laughing-octo-ironman,代码行数:101,代码来源:Main.cs


注:本文中的Line.Select方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。