提出 #68781140


ソースコード 拡げる

use proconio::input;

fn main() {
    input! {
        x: i64,
    };

    let mut ans = Vec::new();
    for k in 0..=30_000_000 {
        if let Some(n) = solve(x, k) {
            assert!(n >= 0);
            ans.push(n);
            ans.push(-n - 1);
        }
    }
    ans.sort_unstable();
    ans.dedup();

    println!("{}", ans.len());
    println!(
        "{}",
        ans.iter()
            .map(|x| x.to_string())
            .collect::<Vec<_>>()
            .join(" ")
    );
}

#[allow(unused)]
fn solve(x: i64, k: i64) -> Option<i64> {
    // n^2 + n + x = k^2

    assert!(k >= 0);

    if x > k.pow(2) {
        return None;
    }

    let mut low = 0_i64;
    let mut high = f64::sqrt((k.pow(2) - x) as f64) as i64 + 1;
    assert!(low.pow(2) + low + x <= k.pow(2));
    assert!(high.pow(2) + high + x > k.pow(2));
    while low + 1 < high {
        let mid = (low + high) / 2;
        if mid.pow(2) + mid + x <= k.pow(2) {
            low = mid;
        } else {
            high = mid;
        }
    }

    if low.pow(2) + low + x == k.pow(2) {
        Some(low)
    } else {
        None
    }
}

提出情報

提出日時
問題 G - sqrt(n²+n+X)
ユーザ ikd
言語 Rust (rustc 1.70.0)
得点 0
コード長 1175 Byte
結果 WA
実行時間 1605 ms
メモリ 2084 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 575
結果
AC × 3
AC × 24
WA × 39
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_handmade_00.txt, 01_handmade_01.txt, 01_handmade_02.txt, 01_handmade_03.txt, 01_handmade_04.txt, 01_handmade_05.txt, 01_handmade_06.txt, 01_handmade_07.txt, 01_handmade_08.txt, 01_handmade_09.txt, 01_handmade_10.txt, 01_handmade_11.txt, 01_handmade_12.txt, 01_handmade_13.txt, 01_handmade_14.txt, 01_handmade_15.txt, 01_handmade_16.txt, 01_handmade_17.txt, 01_handmade_18.txt, 01_handmade_19.txt, 01_handmade_20.txt, 01_handmade_21.txt, 01_handmade_22.txt, 01_handmade_23.txt, 01_handmade_24.txt, 01_handmade_25.txt, 01_handmade_26.txt, 01_handmade_27.txt, 01_handmade_28.txt, 01_handmade_29.txt, 01_handmade_30.txt, 01_handmade_31.txt, 01_handmade_32.txt, 01_handmade_33.txt, 01_handmade_34.txt, 01_handmade_35.txt, 01_handmade_36.txt, 01_handmade_37.txt, 01_handmade_38.txt, 01_handmade_39.txt, 01_handmade_40.txt, 01_handmade_41.txt, 01_handmade_42.txt, 01_handmade_43.txt, 01_handmade_44.txt, 01_handmade_45.txt, 01_handmade_46.txt, 01_handmade_47.txt, 01_handmade_48.txt, 01_handmade_49.txt, 02_radom_00.txt, 02_radom_01.txt, 02_radom_02.txt, 02_radom_03.txt, 02_radom_04.txt, 02_radom_05.txt, 02_radom_06.txt, 02_radom_07.txt, 02_radom_08.txt, 02_radom_09.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 1313 ms 1940 KiB
00_sample_01.txt AC 1314 ms 1908 KiB
00_sample_02.txt AC 1313 ms 1940 KiB
01_handmade_00.txt AC 1313 ms 2048 KiB
01_handmade_01.txt AC 1313 ms 1972 KiB
01_handmade_02.txt AC 1313 ms 2080 KiB
01_handmade_03.txt AC 1313 ms 1940 KiB
01_handmade_04.txt AC 1313 ms 2080 KiB
01_handmade_05.txt AC 1313 ms 2080 KiB
01_handmade_06.txt AC 1313 ms 1808 KiB
01_handmade_07.txt AC 1313 ms 1876 KiB
01_handmade_08.txt AC 1313 ms 1804 KiB
01_handmade_09.txt AC 1313 ms 1936 KiB
01_handmade_10.txt AC 1313 ms 1872 KiB
01_handmade_11.txt AC 1313 ms 1812 KiB
01_handmade_12.txt AC 1313 ms 2016 KiB
01_handmade_13.txt AC 1312 ms 1876 KiB
01_handmade_14.txt AC 1313 ms 2064 KiB
01_handmade_15.txt AC 1312 ms 1908 KiB
01_handmade_16.txt AC 1312 ms 1928 KiB
01_handmade_17.txt AC 1314 ms 1920 KiB
01_handmade_18.txt AC 1313 ms 1944 KiB
01_handmade_19.txt AC 1313 ms 1904 KiB
01_handmade_20.txt AC 1312 ms 2060 KiB
01_handmade_21.txt WA 1391 ms 1972 KiB
01_handmade_22.txt WA 1379 ms 1904 KiB
01_handmade_23.txt WA 1385 ms 1940 KiB
01_handmade_24.txt WA 1355 ms 1948 KiB
01_handmade_25.txt WA 1366 ms 1916 KiB
01_handmade_26.txt WA 1382 ms 1972 KiB
01_handmade_27.txt WA 929 ms 1912 KiB
01_handmade_28.txt WA 1388 ms 1876 KiB
01_handmade_29.txt WA 928 ms 2044 KiB
01_handmade_30.txt WA 1391 ms 1988 KiB
01_handmade_31.txt WA 946 ms 2084 KiB
01_handmade_32.txt WA 1394 ms 1924 KiB
01_handmade_33.txt WA 951 ms 1968 KiB
01_handmade_34.txt WA 1437 ms 1864 KiB
01_handmade_35.txt WA 980 ms 1932 KiB
01_handmade_36.txt WA 1468 ms 2012 KiB
01_handmade_37.txt WA 986 ms 1976 KiB
01_handmade_38.txt WA 1537 ms 2012 KiB
01_handmade_39.txt WA 1050 ms 1952 KiB
01_handmade_40.txt WA 1561 ms 1928 KiB
01_handmade_41.txt WA 1043 ms 1924 KiB
01_handmade_42.txt WA 1605 ms 1856 KiB
01_handmade_43.txt WA 1091 ms 1940 KiB
01_handmade_44.txt WA 1467 ms 1920 KiB
01_handmade_45.txt WA 1140 ms 1944 KiB
01_handmade_46.txt WA 1466 ms 2076 KiB
01_handmade_47.txt WA 983 ms 1924 KiB
01_handmade_48.txt WA 1456 ms 1940 KiB
01_handmade_49.txt WA 1047 ms 2080 KiB
02_radom_00.txt WA 1007 ms 1968 KiB
02_radom_01.txt WA 1479 ms 1916 KiB
02_radom_02.txt WA 1432 ms 1952 KiB
02_radom_03.txt WA 1602 ms 1980 KiB
02_radom_04.txt WA 1505 ms 1812 KiB
02_radom_05.txt WA 1193 ms 1924 KiB
02_radom_06.txt WA 1190 ms 1876 KiB
02_radom_07.txt WA 1557 ms 2016 KiB
02_radom_08.txt WA 1241 ms 1924 KiB
02_radom_09.txt WA 1184 ms 2068 KiB