/*
iiiiiiiiiiii iiiiiiiiiiii iiiiiiiiiiii ttttttttttt
i i i t
i i i t
i i i t
i i i t
i i i t
iiiiiiiiiiii iiiiiiiiiiii iiiiiiiiiiii t
*/
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
int fcuk = 1000000;
bool sieve[1000001];
void createSieve()
{
sieve[1] = sieve[0] = false;
for(ll i=2;i<=fcuk;i++)
sieve[i] = true;
for(ll i=2;(i*i)<=fcuk;i++)
{
if(sieve[i] == true)
{
for(ll j=i*i;j<=fcuk;j+=i)
sieve[j] = false;
}
}
}
int gcd_equation(int a,int b,int& x,int& y)
{
if(b == 0)
{
x = 1;
y = 0;
return a;
}
int x1,y1;
int d = gcd_equation(b,a%b,x1,y1);
x = y1;
y = x1 - (y1 * (a/b));
return d;
}
ll count_bits_kernighan_algo(ll n)
{
ll counter =0;
while(n!=0)
{
ll rsbm = n&(-n);
n -= rsbm;
counter++;
}
return counter;
}
void solve()
{
ll k; cin>>k;
ll n = -1, m = -1;
for(ll i=5;i<k;i++)
{
if(k%i == 0 and (k/i) >= 5)
{
n = i;
m = (k/i);
break;
}
}
// cout<<n<<" "<<m<<endl;
if(n == -1)
{
cout<<-1<<endl;
return;
}
vector<char>vowels({'a','e','i','o','u'});
for(ll i=0;i<n;i++)
{
ll cnt = i;
for(ll j=0;j<m;j++,cnt++)
{
cout<<vowels[cnt%5];
}
}
cout<<endl;
}
int main()
{
// ll t; cin>>t;
// while(t--)
solve();
}
1671C - Dolce Vita | 1669G - Fall Down |
4D - Mysterious Present | 1316B - String Modification |
1204A - BowWow and the Timetable | 508B - Anton and currency you all know |
1672A - Log Chopping | 300A - Array |
48D - Permutations | 677C - Vanya and Label |
1583B - Omkar and Heavenly Tree | 1703C - Cypher |
1511C - Yet Another Card Deck | 1698A - XOR Mixup |
1702E - Split Into Two Sets | 1703B - ICPC Balloons |
1702F - Equate Multisets | 1700A - Optimal Path |
665C - Simple Strings | 1708A - Difference Operations |
1703E - Mirror Grid | 1042A - Benches |
1676B - Equal Candies | 1705B - Mark the Dust Sweeper |
1711A - Perfect Permutation | 1701B - Permutation |
1692A - Marathon | 1066A - Vova and Train |
169B - Replacing Digits | 171D - Broken checker |