Append Arrays
Привет
Задачата не ми е ясна. Като напиша конзолата да чете с "|", ми гърми и не се сещам как да обърна отзад/напред и отляво/надясно. Моля за помощ и ако може примерно решение.
7.Append Arrays
Write a program to append several array of numbers.
- arrays are separated by ‘|’.
- Values are separated by spaces (‘ ’, one or several)
- Order the arrays from the last to the first, and their values from left to right.
Благодаря предварително!
Най-накрая открих как при мен (Monodevelop(7.8.4(build 2) на Ubunto) заработва StringSplitOptions.RemoveEmptyEntries: ето така ".Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);"
И вече Judge дава 100/100 и при мен.
using System;
using System.Collections.Generic;
using System.Linq;
namespace listExer
{
class MainClass
{
public static void Main(string[] args)
{
List<string> listOfLists = Console.ReadLine().Split('|').ToList();
List<string> result = new List<string>();
for (int i = listOfLists.Count - 1; i >= 0; i--)
{
var currentList = listOfLists[i].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
foreach (var item in currentList)
{
result.Add(item);
}
}
Console.WriteLine(string.Join(" ",result));
}
}
}
Едно решение без цикли на 4 реда за 100% в Judge .
using System;
using System.Linq;
namespace ConsoleApp14
{
class Program
{
static void Main(string[] args)
{
string[] input = Console.ReadLine().Split('|').Reverse().ToArray();
string temporal = string.Join(" ", input);
string[] rezult = temporal.Split(" ", StringSplitOptions.RemoveEmptyEntries).ToArray();
Console.WriteLine(string.Join(" ", rezult));
}
}
}
дали е без цикли или просто са скрити отдолу под методите които ползваш? хубаво е да знаеш какво се случва отдолу.
М, спамец. В методите има всичко, това изобщо не занм що го обсъждаме има си Microsoft документация за тия работи и май няма да е лошо да я погледне всеки който иска де сертифицира от производителя.
Вместо да се създава нов масив -
string[] rezult = temporal.Split(" ", StringSplitOptions.RemoveEmptyEntries).ToArray();
може да се използва инициализирания вече списък:
input = temporal.Split(" ", StringSplitOptions.RemoveEmptyEntries).ToList();
Console.WriteLine(string.Join(" ", input));