mirror of
https://github.com/TheAlgorithms/Java.git
synced 2025-07-26 05:59:22 +08:00

enable style InvalidJavadocPosition Co-authored-by: Samuel Facchinello <samuel.facchinello@piksel.com>
32 lines
911 B
Java
32 lines
911 B
Java
package com.thealgorithms.maths;
|
|
|
|
/**
|
|
* @author <a href="https://github.com/siddhant2002">Siddhant Swarup Mallick</a>
|
|
* Program description - To find the FrizzyNumber
|
|
*/
|
|
public final class FrizzyNumber {
|
|
private FrizzyNumber() {
|
|
}
|
|
|
|
/**
|
|
* Returns the n-th number that is a sum of powers
|
|
* of the given base.
|
|
* Example: base = 3 and n = 4
|
|
* Ascending order of sums of powers of 3 =
|
|
* 3^0 = 1, 3^1 = 3, 3^1 + 3^0 = 4, 3^2 + 3^0 = 9
|
|
* Ans = 9
|
|
*
|
|
* @param base The base whose n-th sum of powers is required
|
|
* @param n Index from ascending order of sum of powers of base
|
|
* @return n-th sum of powers of base
|
|
*/
|
|
public static double getNthFrizzy(int base, int n) {
|
|
double final1 = 0.0;
|
|
int i = 0;
|
|
do {
|
|
final1 += Math.pow(base, i++) * (n % 2);
|
|
} while ((n /= 2) > 0);
|
|
return final1;
|
|
}
|
|
}
|