Submission #62827977


Source Code Expand

use itertools::Itertools;
use proconio::input;

static M: usize = 1e6 as usize + 2;

fn mp(has: &[bool]) -> Vec<Vec<usize>> {
    let mut res = vec![vec![]; M];
    let mut i = 2;
    while i < M {
        let mut j = i;
        while j < M {
            if has[j] {
                res[j].push(i);
            }
            j += i;
        }
        i += 1;
    }
    res
}

fn main() {
    input! {
        n: usize,
        k: usize,
        a: [usize; n],
    }
    let has = a.iter().fold(vec![false; M], |mut v, &ai| { v[ai] = true; v} );
    let v = mp(&has);

    let mut cnt = vec![0; M];
    for &ai in a.iter() {
        for &vi in v[ai].iter() {
            cnt[vi] += 1;
        }
    }

    let mut ans = vec![1; n];
    'i: for (i, &ai) in a.iter().enumerate() {
        for &vi in v[ai].iter().rev() {
            if cnt[vi] >= k {
                ans[i] = vi;
                continue 'i;
            }
        }
    }
    println!("{}", ans.iter().join("\n"));
}

Submission Info

Submission Time
Task E - GCD of Subset
User ardRiriy
Language Rust (rustc 1.70.0)
Score 475
Code Size 981 Byte
Status AC
Exec Time 830 ms
Memory 230168 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 475 / 475
Status
AC × 3
AC × 35
Set Name Test Cases
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_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 02_a_distinct_00.txt, 02_a_distinct_01.txt, 02_a_distinct_02.txt, 02_a_distinct_03.txt, 02_a_distinct_04.txt, 03_a_max_00.txt, 03_a_max_01.txt, 03_a_max_02.txt, 03_a_max_03.txt, 03_a_max_04.txt, 03_a_max_05.txt, 03_a_max_06.txt, 04_hcn_00.txt, 04_hcn_01.txt, 04_hcn_02.txt, 04_hcn_03.txt, 04_hcn_04.txt, 04_hcn_05.txt, 04_hcn_06.txt, 04_hcn_07.txt, 04_hcn_08.txt, 05_corner_00.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 18 ms 25328 KiB
00_sample_01.txt AC 18 ms 25436 KiB
00_sample_02.txt AC 19 ms 25696 KiB
01_random_00.txt AC 488 ms 127552 KiB
01_random_01.txt AC 757 ms 174256 KiB
01_random_02.txt AC 761 ms 173056 KiB
01_random_03.txt AC 830 ms 173952 KiB
01_random_04.txt AC 641 ms 158536 KiB
01_random_05.txt AC 763 ms 174100 KiB
01_random_06.txt AC 516 ms 130176 KiB
01_random_07.txt AC 804 ms 174188 KiB
01_random_08.txt AC 651 ms 161592 KiB
01_random_09.txt AC 797 ms 175540 KiB
02_a_distinct_00.txt AC 781 ms 229488 KiB
02_a_distinct_01.txt AC 772 ms 230168 KiB
02_a_distinct_02.txt AC 792 ms 229052 KiB
02_a_distinct_03.txt AC 822 ms 220408 KiB
02_a_distinct_04.txt AC 789 ms 227120 KiB
03_a_max_00.txt AC 109 ms 68152 KiB
03_a_max_01.txt AC 125 ms 56220 KiB
03_a_max_02.txt AC 109 ms 68108 KiB
03_a_max_03.txt AC 109 ms 68032 KiB
03_a_max_04.txt AC 135 ms 57684 KiB
03_a_max_05.txt AC 121 ms 71236 KiB
03_a_max_06.txt AC 121 ms 71176 KiB
04_hcn_00.txt AC 235 ms 67832 KiB
04_hcn_01.txt AC 235 ms 67820 KiB
04_hcn_02.txt AC 235 ms 67836 KiB
04_hcn_03.txt AC 315 ms 78128 KiB
04_hcn_04.txt AC 255 ms 78084 KiB
04_hcn_05.txt AC 333 ms 78164 KiB
04_hcn_06.txt AC 249 ms 77592 KiB
04_hcn_07.txt AC 232 ms 78104 KiB
04_hcn_08.txt AC 236 ms 78144 KiB
05_corner_00.txt AC 19 ms 25352 KiB