Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Solution {
- private static boolean isPentagonal(long x) {
- long n = (long) ((1 + Math.sqrt(24 * x + 1)) / 6);
- long p_n = n * (3 * n - 1) / 2;
- return p_n == x;
- }
- public static void main(String[] args) {
- try (Scanner sc = new Scanner(System.in)) {
- int N = sc.nextInt();
- int K = sc.nextInt();
- for(long n = K + 1; n <= N; n++) {
- long p_n = n * (3 * n - 1) / 2;
- long p_x = (n - K) * (3 * (n - K) - 1) / 2;
- long sum = p_n + p_x;
- long difference = p_n - p_x;
- if(isPentagonal(sum) || isPentagonal(difference)) {
- System.out.println(p_n);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement