library-rs

This documentation is automatically generated by competitive-verifier/competitive-verifier

View the Project on GitHub naoya675/library-rs

:heavy_check_mark: verification/library-checker/enumerate_palindromes/src/main.rs

Depends on

Code

// verification-helper: PROBLEM https://judge.yosupo.jp/problem/enumerate_palindromes

use itertools::Itertools;
use proconio::{input, marker::Chars};

use manacher::manacher;

fn main() {
    input! {
        s: Chars,
    }
    let s = s.iter().intersperse(&'#').collect::<Vec<_>>();

    println!("{}", manacher(&s).iter().enumerate().map(|(i, &k)| k - ((i ^ k ^ 1) & 1)).join(" "));
}

Test cases

Env Name Status Elapsed Memory
Rust all_same_00 :heavy_check_mark: AC 46 ms 28 MB
Rust all_same_01 :heavy_check_mark: AC 44 ms 26 MB
Rust all_same_02 :heavy_check_mark: AC 45 ms 28 MB
Rust all_same_03 :heavy_check_mark: AC 45 ms 27 MB
Rust all_same_04 :heavy_check_mark: AC 46 ms 27 MB
Rust example_00 :heavy_check_mark: AC 6 ms 2 MB
Rust example_01 :heavy_check_mark: AC 5 ms 2 MB
Rust example_02 :heavy_check_mark: AC 5 ms 2 MB
Rust example_03 :heavy_check_mark: AC 5 ms 2 MB
Rust max_random_00 :heavy_check_mark: AC 35 ms 22 MB
Rust max_random_01 :heavy_check_mark: AC 37 ms 22 MB
Rust max_random_02 :heavy_check_mark: AC 36 ms 22 MB
Rust max_random_03 :heavy_check_mark: AC 36 ms 22 MB
Rust max_random_04 :heavy_check_mark: AC 37 ms 22 MB
Rust random_00 :heavy_check_mark: AC 30 ms 17 MB
Rust random_01 :heavy_check_mark: AC 35 ms 21 MB
Rust random_02 :heavy_check_mark: AC 10 ms 4 MB
Rust random_03 :heavy_check_mark: AC 33 ms 19 MB
Rust random_04 :heavy_check_mark: AC 25 ms 13 MB
Rust small_00 :heavy_check_mark: AC 6 ms 2 MB
Rust small_01 :heavy_check_mark: AC 5 ms 2 MB
Rust small_02 :heavy_check_mark: AC 5 ms 2 MB
Rust small_03 :heavy_check_mark: AC 5 ms 2 MB
Rust small_04 :heavy_check_mark: AC 5 ms 2 MB
Back to top page