This Challenge is derived from GJam 2014 China Rational Number Tree.
The Goal is to determine the tree node if given [P,Q] or provide the [P,Q] if given a node. This is the Large Challenge with a Max of 64 Tree levels. Processing of uint64 size data requires extra care.
Consider an infinite complete binary tree where the root node is 1/1 and the left and right children of node P/Q are P/(P+Q) and (P+Q)/Q, respectively.
The Tree looks like:
1/1 ______|______ | | 1/2 2/1 ___|___ ___|___ | | | | 1/3 3/2 2/3 3/1
The nodes are 1/1, 1/2, 2/1, 1/3, 3/2, 2/3, 3/1,...
Input: [N] or [P,Q] where N is a uint64 integer node or [P,Q] (double) are terms of a Node
Output: [P,Q](double) or [N](uint64) depends on Input type
Examples:
[Input] [Output] [2] [1 2] [1 2] [2] [5] [3 2] [3 2] [5]
Contest Performance: Best Delta Time of 14 minutes with only 368 able to process the large data set in less than 3 hours.
Notes:
1) Matlab has issues with uint64 for dec2bin and matrix multiplies.
2) Example of uint64 read is provided in test suite comments
3) Bitshift and bitget work on uint64
Create a function handle that reverses the input arguments of another function handle
118 Solvers
138 Solvers
We love vectorized solutions. Problem 1 : remove the row average.
385 Solvers
160 Solvers
Sum of diagonals elements of a matrix
132 Solvers
Solution 1203316
I'm relatively new to Cody; can anyone please tell me, why does this solution of mine not appear in the Solution List?