CF BUDDY
← Problems·

1173B · Nauuo and Chess

1100 · constructive algorithms, greedy

Problem: Nauuo is a girl who loves playing chess.

One day she invented a game by herself which needs nn chess pieces to play on a m×mm\times m chessboard. The rows and columns are numbered from 11 to mm. We denote a cell on the intersection of the rr-th row and cc-th column as (r,c)(r,c).

The game's goal is to place nn chess pieces numbered from 11 to nn on the chessboard, the ii-th piece lies on (ri,ci)(r_i,\,c_i), while the following rule is satisfied: for all pairs of pieces ii and jj, rirj+cicjij|r_i-r_j|+|c_i-c_j|\ge|i-j|. Here x|x| means the absolute value of xx.

However, Nauuo discovered that sometimes she couldn't find a solution because the chessboard was too small.

She wants to find the smallest chessboard on which she can put nn pieces according to the rules.

She also wonders how to place the pieces on such a chessboard. Can you help her?

Input Format: The only line contains a single integer nn (1n10001\le n\le 1000) — the number of chess pieces for the game.

Output Format: The first line contains a single integer — the minimum value of mm, where mm is the length of sides of the suitable chessboard.

The ii-th of the next nn lines contains two integers rir_i and cic_i (1ri,cim1\le r_i,c_i\le m) — the coordinates of the ii-th chess piece.

If there are multiple answers, print any.

Note: In the first example, you can't place the two pieces on a 1×11\times1 chessboard without breaking the rule. But you can place two pieces on a 2×22\times2 chessboard like this:

In the second example, you can't place four pieces on a 2×22\times2 chessboard without breaking the rule. For example, if you place the pieces like this:

then r1r3+c1c3=12+11=1|r_1-r_3|+|c_1-c_3|=|1-2|+|1-1|=1, 13=2|1-3|=2, 1<21<2; and r1r4+c1c4=12+12=2|r_1-r_4|+|c_1-c_4|=|1-2|+|1-2|=2, 14=3|1-4|=3, 2<32<3. It doesn't satisfy the rule.

However, on a 3×33\times3 chessboard, you can place four pieces like this:

Sample Cases

Case 1

Input

2

Output

2
1 1
1 2

Case 2

Input

4

Output

3
1 1
1 3
3 1
3 3

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback