#CF1763E. 节点对

节点对

节点对

  • 时间限制:2 秒
  • 内存限制:256 MiB

题目描述

我们称有向图中的有序节点对 (u,v)(u, v) 为“单向对”,当且仅当 u≠vu \neq v,存在从 uu 到 vv 的路径,且不存在从 vv 到 uu 的路径。

如果一个有向图中,恰好存在 pp 个有序节点对 (u,v)(u, v) 满足 u<vu < v 且 uu 和 vv 互相可达,则称该有向图为 pp-可达图。请你求出构造一个 pp-可达图所需的最小节点数。

此外,在所有节点数最少的 pp-可达图中,记 GG 为单向对数量最多的图。请你求出该最大单向对数量。

输入格式

输入仅一行,包含一个整数 pp(0≤p≤2⋅1050 \le p \le 2 \cdot 10^5),表示有序节点对的数量。

输出格式

输出一行两个整数,分别表示构造一个 pp-可达图所需的最小节点数,以及在所有节点数最少的 pp-可达图中,单向对的最大数量。

样例输入 1

3

样例输出 1

3 0

样例输入 2

4

样例输出 2

5 6

样例输入 3

0

样例输出 3

0 0

提示

在第一个测试样例中,构造一个 33-可达图所需的最小节点数为 33。在所有 33-可达且节点数为 33 的有向图中,下图 GG 是单向对数量最多的图之一,其单向对数量为 00。

题目插图

数据范围

子任务编号 分值 特殊限制
1 20 p≤4p\le 4
2 40 p≤100p\le 100
3 无特殊限制