Select a new value from last $N$ values; how long until the last $N$ are all the same? Say first we have N distinct numbers in a line, like 1,2,3,...,N, in each round, we choose a random one from the last N numbers, and put it in the end.
Asking the expected number of rounds to make the last N numbers the same.
e.g. for N = 2, first we have
1, 2

and if we chose 1, we got
1, 2, 1

and the status stays the same, since the last N numbers still all distinct.
and if we chose 2, we got
1, 2, 2

and the game ends.
Suppose the expected number is S, we can write
S = 1/2 * (S + 1) + 1/2 * (1)

and we get S = 2
Things become very complicated when N > 2, so I turn for help.
UPDATE:
this occurs to me when doing a project, see this if you are interested in.
and i just wanna know whether it can be solved in a graceful way, or in a hard way but get the answer finally, so i don't need a numeric answer.

the only way i've thought by far
let f('1,2,3', 3) be the answer for N = 3, and it equals
f('1,2,3', 3) = 1/3 * (f('2,3,1', 3) + 1) +
                1/3 * (f('2,3,2', 3) + 1) +
                1/3 * (f('2,3,3', 3) + 1)

see all the f('', N) as unknown numbers, and for a certain N, we have N^N unknown numbers(if consider f('1,2,2', 3) and f('2,3,3', 3) as different status). And for each of them, we can write an equation with some of the other f()
N^N unknown numbers with N^N equations, we can solve it with Gaussian Elimination
It can get the accurate answer in fraction form, However still can not get the analytic result for any given N.
