Loading...
alexei.tcekov avatar alexei.tcekov 33 Точки

може ли малко помощ , как се разчита ...

///  2 3 4 1 50 2 3 4 5

 int[] numbers = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();

        var result = from num in numbers
                     from num1 in numbers
                     where num < num1
                     group num1 by num
                         into newgroup
                         select newgroup;

// как точно се чете това ... гледах доста примери, но така и не разбрах .... идеята е числата да се групират по групи във възходящ ред ... и след като намери по малко да започне новата група с него ..

/// резултат

3 4 50 3 4 5 3 4 50 3 4 5
4 50 4  54 50 4 5
50 5 50 5
2 3 4 50 2 3 4 5
50

/// а трябва да се получи

2 3 4

1 50

2 3 4 5

Тагове:
0
C# Advanced 21/01/2016 11:55:16
RoYaL avatar RoYaL Trainer 6849 Точки

Това се чете точно както го пише - итерирай колекцията като използваш двойки числа (не едно число). За всяка двойка провери дали първото не е по-малко от второто. Групирай по по-малкото.

Еквивалентът на това в екстеншън методите подозирам, че се постига със SelectMany. Мисля, че ще си биеш много главата, за да го правиш с LINQ.

Замислял ли си си се да го направиш по-просто? С един цикъл около числата и в момента в който-стигнеш по-малко число от последното - започваш да пишеш в нова група (списък; или просто биеш нов ред в конзолата)

For Each Number in Collection:

     if Number Less Than NextNumber:

            Console: Write On This Line With Space ( Number )

     Else:

            Console: Write On This Line With EndLine at the End ( Number )

 

0
alexei.tcekov avatar alexei.tcekov 33 Точки

да направих го по просто , но си мислех дали може да стане  и така.  Понеже този синтаксис не ми е ясен много много  и еветуално да кажете къде бъркам ...

ето го решението  по обикновеният начин :

https://gist.github.com/alexeitcekov/16378775b67358a0bb77

0
21/01/2016 13:54:37
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.