結果

問題 No.1593 Perfect Distance
ユーザー Asahi
提出日時 2023-02-04 19:35:05
言語 Java
(openjdk 23)
結果
AC  
実行時間 137 ms / 2,000 ms
コード長 1,086 bytes
コンパイル時間 2,024 ms
コンパイル使用メモリ 79,056 KB
実行使用メモリ 54,280 KB
最終ジャッジ日時 2024-07-03 16:09:03
合計ジャッジ時間 5,422 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 17
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.*;
import java.io.*;
import java.math.*;
import java.util.stream.Stream;

public class Main{
    /* 入出力 */
    static BufferedReader buff = new BufferedReader(new InputStreamReader(System.in));
    static StringTokenizer st;
    static PrintWriter output = new PrintWriter(System.out);
    static Scanner sc = new Scanner(System.in);
    /* 定数 */
    static final int [] y4 = {0,1,0,-1};
    static final int [] x4 = {1,0,-1,0};
    static final int  INF1 = Integer.MAX_VALUE;
    static final long INF2 = Long.MAX_VALUE;
    static final long MOD1 = (long)1e9+7;
    static final long MOD2 = 998244353;
    /* Main */
    public static void main(String[] args) throws IOException{
        long n = sc.nextLong();
        long ans = 0;
        for(long x = 1; x <= 1000000; x++) {
            long y = n*n - x*x;
            if(y <= 0 || !isInteger(Math.sqrt(y))) continue;
            ans++;
        }
        output.print(ans);
        output.flush();
    }
    static boolean isInteger (double value) {
        return (value == Math.floor(value));
    }
}
0