Skip to main content

Makarov's Ambition - Mindstormer April 20

 Makarov's Ambition - Mindstormer April 20 


Question Brief  :

          Two numbers s (number of states) and d (number of districts) followed by a series of 'n' numbers (0 and 1) will be given to you such that s*d=n. All you have to do is check that is there any way to divide the series into n parts such that in majority of states, the guild is victorious. The guild wins if more than half of the districts are won by the guild. Also the division will be consecutive. For example:
if s=3, d=2 and series is a1, a2, a3, a4, a5, a6. so division can be made in only these two ways :
  • (a1, a2), (a3, a4), (a5, a6)
  • (a2, a3), (a4, a5), (a6,a1)
Prequisite  :  Basic Programming

Approach  :

        We have to take two arrays, one to store the series and other stores the sum of series till that index.

There can be only that number of ways to divide the states as many districts a state can have. All you have to do is check for the majority, by checking the difference between the numbers of sum array ( the array that stores the sum of series till that index) at the distance of d between indexes. 

Setter Code :


     

Comments

Popular posts from this blog

Brilliant Mind - Mindstormer April 20 (Product Of All Perfect Square Term Upto A Given No 'n')

Product Of All Perfect Square Term Upto n Question Brief   :           A Number 'n' is given to you , you are said to find the product of all the perfect square term less than or equal to n. Prequisite   :   Basic Mathematics, Preprocessing Approach   :      Perfect Square numbers upto any number n are only these:          (1 2 ,2 2 ,........,(√n) 2 )      In Question it was asked to find the product of all perfect square numbers.i.e. ans =  (1 2  x 2 2   x....... x (√n) 2 ) it can be easily transformed to: ans =  (1   x 2   x....... x √n ) 2 ans= (√n!) 2 So, in each query , for given value of any n, we had to print the square of factorial of square root of n. This can be easily answered in O(1) if we already preprocess the number 1 to sqrt(N) and store their factorial already. SETTER CODE  :

The Thinker's Thesaurus - Mindstormer April 20

Satisfy the condition: x*p^x ≡ q (mod r) Problem Brief   : Tanu is a pre final year cs student. She has been given an integer I. And has been asked to compute how many integers x ( 1 <= x <= I) satisfy the below condition:- x*p x   ≡  q (mod r) Prerequisite   :    Basic Mathematics Approach   : Brute force solution won't work as 'I' is in range of 10^10 .  So we need to find out some features of that given equation. We have p r-1 ≡1(mod r) where r is a prime number by  Fermat's Little Theorem , it is obvious that p z  mod r falls into a loop and the looping section is r−1. Also, z mod r has a looping section r .We can try to list a chart to show what  x*p x  is with some specific i,j. (In the chart shown below, x is equal to i*(r-1) + j. Proof for the chart shown above: For a certain i,j  we can see that  x *p^x mod r= ((i*(r−1)+j)mod r)* x ^ (i...