XDEY7SNLZMAC3KIKUHDGZGGXHHT7BYF3GSVAREXESO5D4S6FZBQQC
J3ZPU3R2JTPQF3KIKRWEQHEFD7ISDGP7QTEKRBQI3SWC6ALZT54QC
IXMBS6ZPQSFG6HTYGHNJJ3YK2KYGUBBNTMIU7Q5CAKLJEXSBP4EAC
MSFESBT6OSZ23YMSEOMONHXQ3RKPM3FGLC3D4AEULXBXVHKQ4GMAC
SGDHLMNRZPPPGF4YTKDIVKM53VY3BXEIM5FXTEVW2EXGGHBWU4WQC
N3POGH26YQYAWWXIKGYBLDKGNM45LYCNGR74ATFYJOHQXP373WJQC
QGB53CNEWXXH5CVVQFJUTGBAOAD5U3JAHTIVGY6XPOBEIIE7K4HQC
MBAFQOWX2DP4V4L4QPN7WBUBOV7IKAEG63HNQQWET64ZWY36DYPAC
ERYD4CD76UGRWQJXSVEPME4XJNQOGECALQEB3NBE76RLJX22TX6AC
JZN2AQ3EMSXVYKPYPMHKN6JFKAFGZMQLHO7N5A37SKTNFWFI53OQC
UTP7D53QIV7KUBI3DX36GSDXMSAVIMDSPOSYN7SJEREOHBHJIEKAC
let mut out = String::with_capacity(15);
// Check that the assumption that MAX_STRING_LENGTH is equal to the length of constructing the largest output holds.
debug_assert!(
FACTORS_VOWELS
.iter()
.map(|tuple| PREFIX.len() + tuple.1.len() + SUFFIX.len())
.sum::<usize>()
.eq(&MAX_STRING_LENGTH),
"MAX_STRING_LENGTH is not equal to the length of the largest constructible output."
);
[(3, "i"), (5, "a"), (7, "o")]
.iter()
.for_each(|(factor, vowel)| {
if n % factor == 0 {
out.push_str("Pl");
out.push_str(vowel);
out.push_str("ng");
}
});
let mut out = String::with_capacity(MAX_STRING_LENGTH);
FACTORS_VOWELS.iter().for_each(|(factor, vowel)| {
if (n % factor).eq(&0) {
out.push_str(PREFIX);
out.push_str(vowel);
out.push_str(SUFFIX);
}
});