#include #include #include using namespace std; int main() { int64_t N; cin >> N; set factors; int64_t stop = sqrt(N); int factorsFound = 0; for (int64_t i = 2; i <= stop; i++) { if (N % i == 0) { factors.insert(i); factors.insert(N / i); factorsFound++; // Does not represent the size of the set, but the amount of highest factors if (factorsFound >= 6) { break; } } } int64_t power = 0; string result = "DBVJKM"; int charactersUsed = 0; auto it = factors.rbegin(); auto end = factors.rend(); while (power < N && charactersUsed < 6) { if (it != end) { power += *it; it++; } else { power += 1; } charactersUsed++; } if (power < N) { cout << "NO" << endl; } else { result = result.substr(0, charactersUsed); cout << result << endl; } return 0; }