测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A10690. PolandBall and Polygon

编程题 普及/提高-

题目描述

PolandBall has such a convex polygon with $n$ veritces that no three of its diagonals intersect at the same point. PolandBall decided to improve it and draw some red segments.

He chose a number $k$ such that $gcd(n,k)=1$ . Vertices of the polygon are numbered from $1$ to $n$ in a clockwise way. PolandBall repeats the following process $n$ times, starting from the vertex $1$ :

Assume you've ended last operation in vertex $x$ (consider $x=1$ if it is the first operation). Draw a new segment from vertex $x$ to $k$ -th next vertex in clockwise direction. This is a vertex $x+k$ or $x+k-n$ depending on which of these is a valid index of polygon's vertex.

Your task is to calculate number of polygon's sections after each drawing. A section is a clear area inside the polygon bounded with drawn diagonals or the polygon's sides.

输入格式

There are only two numbers in the input: $n$ and $k$ ( $5<=n<=10^{6}$ , $2<=k<=n-2$ , $gcd(n,k)=1$ ).

输出格式

You should print $n$ values separated by spaces. The $i$ -th value should represent number of polygon's sections after drawing first $i$ lines.

输入输出样例

输入 #1
5 2
输出 #1
2 3 5 8 11 
输入 #2
10 3
输出 #2
2 3 4 6 9 12 16 21 26 31 

说明/提示

The greatest common divisor (gcd) of two integers $a$ and $b$ is the largest positive integer that divides both $a$ and $b$ without a remainder.

For the first sample testcase, you should output "2 3 5 8 11". Pictures below correspond to situations after drawing lines.

![](/uploads/luogu/CF755D/4990bd3c0c7dd5836fdcc579f970dcdca8dbd872_46a74dfc16cd.png)![](/uploads/luogu/CF755D/6451ef95db9646f275ba3ec79da2a8d5b0b028d0_c0390bf86568.png)![](/uploads/luogu/CF755D/da900464c60a214ba6c5242ba8fc65122871a490_883b9341c00d.png)![](/uploads/luogu/CF755D/a8b3c0780f20737fed12f744f83c0f1eab3d538f_f8779e27fe4e.png)![](/uploads/luogu/CF755D/c214010a205eb51e891b2376aacedcb09475410e_9ce319e67c75.png)![](/uploads/acgo/image/c9d01e5a964b830f_6e84f097807f.jpeg)
上一题 去做题 下一题