結果
| 問題 | No.3204 Permuted Integer | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2025-07-22 17:41:50 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                TLE
                                 
                             | 
| 実行時間 | - | 
| コード長 | 1,619 bytes | 
| コンパイル時間 | 380 ms | 
| コンパイル使用メモリ | 82,476 KB | 
| 実行使用メモリ | 84,172 KB | 
| 最終ジャッジ日時 | 2025-07-22 17:41:54 | 
| 合計ジャッジ時間 | 4,559 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 | 
| other | TLE * 1 -- * 25 | 
ソースコード
# Generated By Gemini 2.5 Pro
import sys
def solve():
    """
    1つのテストケースを解決する関数
    """
    # 標準入力からNを文字列として読み込む
    n_str = sys.stdin.readline().strip()
    if not n_str:
        return
    n_len = len(n_str)
    # Nの各桁の数字をソートして、比較の基準とする
    n_chars_sorted = sorted(n_str)
    # 探索する平方数の上限を計算する
    # i*i が N と同じ桁数以下である範囲で探す
    # i*i < 10**n_len  =>  i < sqrt(10**n_len)
    limit = int((10**n_len)**0.5)
    # i=0から順に探索し、最初に見つかったものが最小の平方数となる
    for i in range(limit + 1):
        square = i * i
        
        # 平方数をNと同じ桁数になるよう左側を'0'で埋める
        padded_square_str = str(square).zfill(n_len)
        # 桁の構成が同じかどうかをソートして比較する
        if sorted(padded_square_str) == n_chars_sorted:
            print(square)
            return
    # ループを抜けても見つからなかった場合
    print(-1)
def main():
    """
    メイン処理
    T個のテストケースを処理する
    """
    try:
        # テストケースの数を読み込む
        t_str = sys.stdin.readline()
        if not t_str:
            return
        T = int(t_str)
        
        # 各テストケースについてsolve()を呼び出す
        for _ in range(T):
            solve()
    except (IOError, ValueError):
        # 入力エラー処理
        return
if __name__ == "__main__":
    main()
            
            
            
        