Facebook Hacker cup 2015, Round 1 Solution



Facebook Hacker cup 2015, Round 1 Solution

Homework

The problem introduces the term primacity as:

Let Im an integer positive and Pn a prime number, the primacity of Im is the amount of Pn which divides it.

For example: Let I=550, its primacity is 3 becuase 2,5 and 11 divide it.

The problem ask us: Given 3 numbers A,B and K, how many integers in the inclusive range [A,B] have a primacity of exactly K

Constraints:

1T100 , Let T the number of test cases
2AB107
1K109

Clearly, we need to have a list of primes numbers for used later, we can use a modified of the Sieve of Eratosthenes. Let L an array with length 107+1 with initialized values of 0, the principle idea here is that each time that we found a Pn in the sieve we increment by 1 to L[Pn] thought L[iPn], where i is a number lesser than 107Pn. Then, when we ask if Im in the interval [A,B] has primacity K, just we need to check out if Im==L[Im]. After that only we increment an r by 1 each time that last statement is true for get the final answer. The complexity of this task is the same than the Sieve: (nlogn) for the integers 1 to n.


Read full article from Facebook Hacker cup 2015, Round 1 Solution


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts