Блог пользователя qwi

Автор qwi, история, 3 года назад, По-английски

Is there an editorial published somewhere? I have checked UTPC's official website but couldn't find anything. Would love to see some explanations for the harder problems. Participants' solutions can't be viewed, is this intentional too?

Полный текст и комментарии »

  • Проголосовать: нравится
  • +3
  • Проголосовать: не нравится

Автор qwi, история, 3 года назад, По-английски

Recently, I have been reading up on few blogs about rolling hash: dacin21's [On the mathematics behind rolling hashes and anti-hash tests] and rng_58's [Hashing and Probability of Collision]. Both of them showcase different hashing technique.

Method described in dacin21's blog:

Note: in the above equation a is the base

Method described in rng_58's blog:

H(a) = (r+a_1)(r+a_2)...(r+a_n)

Note: in the above equation r is the base

Are there any differences between the two in terms of use-case and other parameters? Which one do you recommend? Also, if possible can you please share your implementation of rolling hash if you have ever used it to solve any problem. Thanks!

Полный текст и комментарии »

  • Проголосовать: нравится
  • +16
  • Проголосовать: не нравится

Автор qwi, история, 3 года назад, По-английски

Can't understand how to solve this problem.

Find a permutation of a given sequence A with N elements, such that it is a max-heap and when converting it to a sorted sequence, the total number of swaps in maxHeapify of line 25 in the pseudo code is maximal possible.

1  maxHeapify(A, i)
2      l = left(i)
3      r = right(i)
4      // select the node which has the maximum value
5      if l ≤ heapSize and A[l] > A[i]
6          largest = l
7      else 
8          largest = i
9      if r ≤ heapSize and A[r] > A[largest]
10         largest = r
11
12     if largest ≠ i 
13         swap A[i] and A[largest]
14         maxHeapify(A, largest) 
15
16 heapSort(A):
17     // buildMaxHeap
18     for i = N/2 downto 1:
19         maxHeapify(A, i)
20     // sort
21     heapSize ← N
22     while heapSize ≥ 2:
23         swap(A[1], A[heapSize])
24         heapSize--
25         maxHeapify(A, 1)

Source: AOJ

Полный текст и комментарии »

  • Проголосовать: нравится
  • +1
  • Проголосовать: не нравится