結果
問題 | No.864 四方演算 |
ユーザー |
![]() |
提出日時 | 2019-09-22 15:55:33 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 154 ms / 1,000 ms |
コード長 | 658 bytes |
コンパイル時間 | 2,177 ms |
コンパイル使用メモリ | 73,900 KB |
実行使用メモリ | 41,472 KB |
最終ジャッジ日時 | 2024-09-19 03:37:09 |
合計ジャッジ時間 | 7,562 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 |
ソースコード
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long n = sc.nextLong(); long k = sc.nextLong(); long ans = 0; for(long i = 1; (i * i) <= k; i++) { if((k % i) == 0) { long j = k / i; long t1 = Math.min(n, i - 1) - Math.max(1, i - n) + 1; long t2 = Math.min(n, j - 1) - Math.max(1, j - n) + 1; long t = 0; if((t1 >= 0) && (t2 >= 0)) { t = t1 * t2; if(i == j) { ans += t; } else { ans += (2 * t); } } } } System.out.println(ans); } }