아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Доказательство

시간 제한2초메모리 제한1024 MB

요약
N개의 정의가 주어질 때, 선택한 함의들만으로 추이적으로 따라오는 함의는 다시 증명할 수 없다는 조건에서 최대로 얻을 수 있는 함의의 수와 그 목록을 구합니다.
난이도

보통10점 중 7점

유형
그리디, 그래프, 조합론, 구현
정답자
아직 제출이 없습니다

문제

Аня и Валя поступили в институт. Первым предметом у них в расписании была дискретная математика. На первом занятии они изучали NN различных эквивалентных определений дерева и доказывали их эквивалентность. За каждое доказательство у доски того факта, что одно определение дерева следует из другого, студент получал конфетку.

Но чтобы все выступления у доски были содержательными, преподаватель поставил условие --- нельзя доказывать очевидные факты, которые являются логическими следствиями уже доказанных. То есть, если уже доказано, что из A_1A\_1 следует A_2A\_2, из A_2A\_2 следует A_3A\_3, …\ldots, из A_k−1A\_{k-1} следует A_kA\_k, то нельзя доказывать, что из A_1A\_1 следует A_kA\_k. Студенты в группе, где учатся Аня и Валя, очень дружные, и поэтому они решили распределить доказательства так, чтобы получить как можно больше конфеток.

Выясните, какое максимальное количество конфеток могут получить студенты, и как они должны действовать для этого.

입력

Во входном файле содержится единственное число NN (2≤N≤1002 \le N \le 100) --- количество различных определений дерева.

출력

В первой строке выходного файла выведите число mm --- максимальное число конфеток, могут получить студенты.

В каждой из следующих mm строк выведите по два числа AA и BB, означающих, что очередной студент будет доказывать что из определения AA следует определение BB. Все определения пронумерованы целыми числами от 11 до NN.

예제2

  1. 예제 1

    입력
    2
    
    예상 출력
    2
    1 2
    2 1
    
  2. 예제 2

    입력
    3
    
    예상 출력
    5
    1 3
    2 3
    2 1
    1 2
    3 1