Я тут недавно решил пересесть на си шарп, в связи с тем что пробовал писать что-то под свой Windows Phone, а заодно решил попробовать писать контесты на нём. Это забавно, но возникают проблемы с чтением данных. Я читаю вот так, но мне кажется это совсем неправильно, нагуглить как правльно я не смог, сканера как в Яве я так понял в c# нету.
String s = Console.ReadLine();
String[] p = s.Split(' ');
int[] a = new int[n];
for (int i = 0; i < n; i++)
{
a[i] = int.Parse(p[i]);
}
Это если нужно прочитать массив чисел из строки. Может кто подскажет, вроде Egor пишет иногда на С#, но я что-то не смог найти его посылок на нём. И ещё вопрос, кто-нибудь знает можно ли отсортировать решения по языку, или хотя бы найти решения на определённом языке?
Можно либо читать вот так, либо написать себе свой Scanner
Отсортировать по языку можно. В посылках/статусе справа внизу можно выбрать язык
Где-то уже писал. Считать массив можно вот так:
лучше так не делать, потому что это долго (где-то была задача, где такое чтение падало по TL). Я вот такое написал
Соответственно читать теперь вот так:
удобно еще и тем, что числа в инпуте необязательно должны быть в одну строку и через один пробел (на CF с этим пока проблем не видел, но на других ресурсах бывает часто). Если числа могут быть только неотрицательными, этот метод можно еще немного ускорить (в мои посылках nextPositive(), там еще пару полезных есть методов чтения)
Ну свой сканер я смогу написать) Просто хотелось не заморачиваться, но видно придётся
Можно вот так еще написать
int[] arr = s.Split(' ').Select(x=>int.Parse(x)).ToArray();
В любом случае, есть (крайне популярная на всех ресурсах) проблема с размером стека, из-за которой приходится писать какие-то немыслимые извращения вместо обычного DFS, так что C# в данный момент похоже не самый лучший вариант