- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
public class Solution
{
public string RemoveStars(string s)
{
char[] str = new char[s.Length];
int l = 0;
for(int i = 0; i < s.Length; ++i)
if(s[i] == '*')
--l;
else
str[l++] = s[i];
return new string(str, 0, l);
}
}
kcalbCube 23.10.2022 05:06 # 0
Memory Usage: 40.8 MB, less than 92.45% of C# online submissions for Removing Stars From a String.
Как ускорить?
kcalbCube 23.10.2022 05:07 # 0
Runtime: 122 ms, faster than 93.40% of C# online submissions for Removing Stars From a String.
Memory Usage: 40.4 MB, less than 99.06% of C# online submissions for Removing Stars From a String.
Больше и идей нет.
kcalbCube 23.10.2022 05:16 # 0
guest6 23.10.2022 15:23 # 0
нахуя в куче он?
TerraformGovno 23.10.2022 22:32 # 0
guest6 23.10.2022 22:42 # 0
через ансейф рази чо
kcalbCube 24.10.2022 01:42 # 0
Fike 10.11.2022 23:59 # 0
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/stackalloc
guest6 11.11.2022 00:01 # 0
Fike 11.11.2022 00:18 # 0
guest6 11.11.2022 00:19 # 0
guest6 11.11.2022 06:14 # 0
stackallocчить без ансейф контекста можно ТОЛЬКО массивы, и работать с ними только через Span и ReadOnlySpan (долбоебы не могут в конст)
У спанов таике ограничения
"ref struct" (и эти люди ржут над glvalue) so
that they can't be boxed, they can't be assigned to variables of type Object, dynamic or to any interface type, they can't be fields in a reference type, and they can't be used across await and yield boundaries. In addition, calls to two methods, Equals(Object) and GetHashCode, throw a NotSupportedException.
То есть с ними нельзя делать примерно ничего, да еще и Варвару Лискову обидели
То есть это такой воюний костыль из говна и палочек по мерзости схожий с IDisposable.
Fike 11.11.2022 09:18 # 0
guest6 26.10.2022 14:26 # 0
TarasB 10.11.2022 23:50 # 0
guest6 10.11.2022 23:58 # 0
Нужен хотя бы escape analysis (как в го) а еще лучше нормальное управление мапятью
Fike 11.11.2022 00:00 # 0
guest6 13.03.2024 23:15 # 0
Я мог бы выпить море, я мог бы стать другим
Soul_re@ver 23.10.2022 12:40 # +1
> less than 99.06%
Какие же там ротоёбы сидят...
guest6 23.10.2022 13:44 # +1
Rooster 25.10.2022 08:06 # 0
Fike 25.10.2022 08:29 # 0
kcalbCube 26.10.2022 10:13 # 0
Был такой кста вариант, но при переёбке в string все benefits теряются
ISO 26.10.2022 13:48 # 0
А чо, от Span нельзя за O(1) взять под-спан (один индекс поменять) и не коньструировать лишнюю строку?
Soul_re@ver 26.10.2022 13:59 # +1
Починил.
guest6 26.10.2022 17:05 # 0
Soul_re@ver 26.10.2022 17:09 # +1
guest6 26.10.2022 17:13 # 0
Спасибо, я догадался. Было бы очент страанно, если бы он копировать нижележащий массив.
Мой вопрос был про строку. Если чары туда копируются, то это уже не (1), а (N) же, правда не длина всей строчки, а лишь (0, l)
Теоретически, строка могла бы содержать два указателя на куски слайса, но видимо она так не делает
Да и слайс у нас со стекового значения (пришлось бы тогда перекладывать его в кучу, видимо)
Да, проще скопировать
kcalbCube 11.11.2022 13:25 # 0
guest6 26.10.2022 14:25 # 0
ну вот, уже и в C#
лет через двадцать и в джву завезут
а пока нельзя. Всё таки понятия стека и кучи -- сложные, большинство джава программистов с ними пока не знакомо...
TerraformGovno 23.10.2022 11:50 # 0
TerraformGovno 23.10.2022 22:33 # 0
TerraformGovno 23.10.2022 11:56 # 0
Ват?
А точно код рабочий? Какая задача?
kcalbCube 23.10.2022 12:01 # 0
Fike 25.10.2022 08:31 # 0
kcalbCube 26.10.2022 10:05 # 0
inkanus_gray 25.10.2022 02:28 # 0
nyTuH_nugop 11.11.2022 02:05 # 0
cepreu_monoJlb 03.02.2023 17:22 # 0
techlead_seneor_228 03.02.2023 12:08 # 0
inkanus_gray 03.02.2023 18:19 # 0
techlead_seneor_228 03.02.2023 18:33 # 0
hormand 03.02.2023 23:29 # 0
techlead_seneor_228 04.02.2023 00:43 # 0
zhigolo 04.02.2023 14:49 # 0
cepreu_monoJlb 04.02.2023 21:01 # 0