#P1511D. Min Cost String

    ID: 819 远端评测题 2000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>brute forceconstructive algorithmsgraphsgreedystrings*1600

Min Cost String

Description

Let's define the cost of a string ss as the number of index pairs ii and jj (1i<j<s1 \le i < j < |s|) such that si=sjs_i = s_j and si+1=sj+1s_{i+1} = s_{j+1}.

You are given two positive integers nn and kk. Among all strings with length nn that contain only the first kk characters of the Latin alphabet, find a string with minimum possible cost. If there are multiple such strings with minimum cost — find any of them.

The only line contains two integers nn and kk (1n2105;1k261 \le n \le 2 \cdot 10^5; 1 \le k \le 26).

Print the string ss such that it consists of nn characters, each its character is one of the kk first Latin letters, and it has the minimum possible cost among all these strings. If there are multiple such strings — print any of them.

Input

The only line contains two integers nn and kk (1n2105;1k261 \le n \le 2 \cdot 10^5; 1 \le k \le 26).

Output

Print the string ss such that it consists of nn characters, each its character is one of the kk first Latin letters, and it has the minimum possible cost among all these strings. If there are multiple such strings — print any of them.

Samples

样例输入 1

9 4

样例输出 1

aabacadbb

样例输入 2

5 1

样例输出 2

aaaaa

样例输入 3

10 26

样例输出 3

codeforces