結果
| 問題 |
No.550 夏休みの思い出(1)
|
| コンテスト | |
| ユーザー |
aaaaasatori
|
| 提出日時 | 2018-02-19 20:29:43 |
| 言語 | Java (openjdk 23) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,122 bytes |
| コンパイル時間 | 4,322 ms |
| コンパイル使用メモリ | 83,856 KB |
| 実行使用メモリ | 52,392 KB |
| 最終ジャッジ日時 | 2024-07-08 13:50:13 |
| 合計ジャッジ時間 | 11,192 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 3 |
| other | TLE * 1 -- * 54 |
ソースコード
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class No550 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long a = sc.nextLong();
long b = sc.nextLong();
long c = sc.nextLong();
long absc = Math.abs(c); //cの絶対値
List<Long> yakusuu = new ArrayList<Long>(); //cの約数
List<Long> kai = new ArrayList<Long>();
for(long i = 1;i * i <= absc;i++) {
if(absc % i == 0) {
yakusuu.add(i);
if(i != absc/i) {
yakusuu.add(absc/i);
}
}
}
for(int i = 0;i < yakusuu.size();i++) {
long alpha = yakusuu.get(i);
if(alpha * alpha * alpha + a * alpha * alpha + b * alpha + c == 0) {
kai.add(alpha);
}
alpha = -alpha;
if(alpha * alpha * alpha + a * alpha * alpha + b * alpha + c == 0) {
kai.add(alpha);
}
}
if(c == 0) {
kai.add(c);
kai.add((-a + (long)Math.sqrt(a*a - 4*b))/2);
kai.add((-a - (long)Math.sqrt(a*a - 4*b))/2);
}
Collections.sort(kai);
for(long x:kai) {
System.out.print(x + " ");
}
System.out.println();
}
}
aaaaasatori