Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
31
Task/Van-Eck-sequence/Java/van-eck-sequence.java
Normal file
31
Task/Van-Eck-sequence/Java/van-eck-sequence.java
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class VanEckSequence {
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println("First 10 terms of Van Eck's sequence:");
|
||||
vanEck(1, 10);
|
||||
System.out.println("");
|
||||
System.out.println("Terms 991 to 1000 of Van Eck's sequence:");
|
||||
vanEck(991, 1000);
|
||||
}
|
||||
|
||||
private static void vanEck(int firstIndex, int lastIndex) {
|
||||
Map<Integer,Integer> vanEckMap = new HashMap<>();
|
||||
int last = 0;
|
||||
if ( firstIndex == 1 ) {
|
||||
System.out.printf("VanEck[%d] = %d%n", 1, 0);
|
||||
}
|
||||
for ( int n = 2 ; n <= lastIndex ; n++ ) {
|
||||
int vanEck = vanEckMap.containsKey(last) ? n - vanEckMap.get(last) : 0;
|
||||
vanEckMap.put(last, n);
|
||||
last = vanEck;
|
||||
if ( n >= firstIndex ) {
|
||||
System.out.printf("VanEck[%d] = %d%n", n, vanEck);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue