ferc's blog

By ferc, 3 years ago, translation, In English,

I have some "list" (more info). I added to it some friends. Now, I'd like to show friends' standings to other people. But if you click you will see nothing (link is correct).

So, why can't other people use my lists if they have relevant link?

Read more »

 
 
 
 
  • Vote: I like it
  • +15
  • Vote: I do not like it

By ferc, history, 3 years ago, In Russian,

На последнем контесте была задача D. Кай и снежинки. В разборе написано, что вполне подойдет решение в каждой вершине сливать сеты ее потомков.

Очевидно, что худший тест — это просто цепь из 300000 вершин. Тогда получается, что в каждой вершине будет 1, 2, 3,..., 300000 элементов в сете. Всего элементов (арифм. прогрессия) 300000 * 300000 / 2 ~= 45 * 10^9.

Это катастрофически много. Когда я попытался именно сохранить все эти сеты, то, разумеется, получил ML. Однако, если написать как в разборе, то есть просто запуститься рекурсивно из корня и постепенно получать ответ для него (не сохраняя сами сеты), то получим Accepted.

Так вот по сути же выделяем под те же 45 * 10^9 интов. Единственное, что приходит в голову, то что сет после выполнения функции чистит за собой память, которую потребовал в ходе выполнения этой функции, и в последствии может снова использовать ее же.

1) Подскажите, это правда так?

Грубо говоря, есть цикл for (int i = 0; i < 100000; i++) { set a; a.insert(3); }

Правда ли, что потребуется памяти столько, сколько необходимо на одну итерацию? Я просто раньше думал, что выделяется всегда абсолютно новая область памяти. Помогите разобраться, пожалуйста.

Read more »

 
 
 
 
  • Vote: I like it
  • +5
  • Vote: I do not like it

By ferc, history, 4 years ago, In Russian,

Всем доброго дня!

Столкнулся с проблемой при дебаге в VS 2013 Community. Дело в том, что раньше я писал в VS 2008, очень привык к тому отладчику, а именно к разделу "watch". Он очень удобный. При наведении мышью на std::vector я видел все содержимое вектора. Тоже самое и в "watch".

Особенно удобно это в случае двумерного вектора, когда в любой момент дебага можно посмотреть на двумерный вектор как на матрицу (то есть видны все элементы). Вот скрины:

Недавно поставил 2013 Visual Studio. И все бы ничего, удобно, красиво, но нет теперь такого просмотра вектора. Вместо отображения всех элементов вылазиют всякие size, capacity, адреса в 0x системе.

Конечно, можно увидеть каждый элемент, но для этого надо раскрыть каждую строчку (при том по очереди), да и открываются они в столбик. То есть пока все откроешь, уже пропадает представление о том, где что должно стоять.

Собственно, сабж.

  1. Есть ощущение, что это можно настроить, так как в универе у меня на VS 2010 все нормально, а у друга на том же 10 вижаке такая же проблема. Если это возможно настроить, подскажите как, у меня не получилось найти.

  2. Если кто-то пишет на 2015(бесплатной), посмотрите, как у вас с отображением двумерных векторов и скажите, пожалуйста.

PS Кстати, тоже самое касается queue, string, stack, map и т. д.

Кто чем может помогите, был бы очень рад.

Read more »

 
 
 
 
  • Vote: I like it
  • +42
  • Vote: I do not like it

By ferc, history, 4 years ago, In Russian,

Hi, everyone!

Recently I solved problems from Codeforces Beta Round #5 and when I could'n solve problem D, I wanted to browse someone else's solution, but I could'n do it. Competitors' solutions are closed, and I can't look it.

Moreover, I can't look every solutions before Codeforces Round #100. Links are inactive. Like this...

The exception is problems, that I have solved.

After Codeforces Round #100 I can look every solutions.

I would like to know, is everyone have a such trouble?

Sorry for my bad English :)

Read more »

 
 
 
 
  • Vote: I like it
  • +5
  • Vote: I do not like it