結果
| 問題 | No.3248 構築問題 | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2025-09-05 19:29:03 | 
| 言語 | C# (.NET 8.0.404) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 53 ms / 2,000 ms | 
| コード長 | 505 bytes | 
| コンパイル時間 | 12,659 ms | 
| コンパイル使用メモリ | 170,836 KB | 
| 実行使用メモリ | 187,132 KB | 
| 最終ジャッジ日時 | 2025-09-05 19:29:18 | 
| 合計ジャッジ時間 | 14,172 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 10 | 
コンパイルメッセージ
復元対象のプロジェクトを決定しています... /home/judge/data/code/main.csproj を復元しました (100 ミリ秒)。 main -> /home/judge/data/code/bin/Release/net8.0/main.dll main -> /home/judge/data/code/bin/Release/net8.0/publish/
ソースコード
int[] T = Array.ConvertAll(Console.ReadLine().Split(), int.Parse);
int n = T[0];
int x = T[1];
bool found = false;
// aを1からn^(1/x)くらいまで試す
for (int a = 1; a <= Math.Pow(n, 1.0 / x); a++)
{
    double pow = Math.Pow(a, x);
    if (n % pow != 0) continue;
    int b = (int)(n / pow);
    
    // bが正整数かつ、aと異なるか確認
    if (b > 0 && b != a && Math.Pow(a, x) * b == n)
    {
        found = true;
        break;
    }
}
Console.WriteLine(found ? "Yes" : "No");
            
            
            
        