0 atcoder#ARC102B. [ABC108D] All Your Paths are Different Lengths

[ABC108D] All Your Paths are Different Lengths

题目描述

整数 L L が与えられます。以下の条件を満たす有向グラフをひとつ構成してください。構成したグラフに多重辺が含まれていても構いません。 なお、条件を満たす有向グラフは必ず存在することが証明できます。

  • 頂点数 N N 20 20 以下で、すべての頂点には 1 1 以上 N N 以下の相異なる番号が付けられている
  • 辺数 M M 60 60 以下で、すべての辺には 0 0 以上 106 10^6 以下の整数の長さが付けられている
  • 全ての辺は番号の小さい方の頂点から大きい方の頂点に向かって向きづけられている。すなわち、1,2,...,N 1,2,...,N はこのグラフの頂点の番号を適当なトポロジカル順序で並べてできる列である
  • 頂点 1 1 から頂点 N N への異なるパスはちょうど L L 個あり、それらの長さは 0 0 から L1 L-1 までの相異なる整数である

ただし、パスの長さとは、そのパス上の辺の長さの和を表します。また、2 2 つのパスが異なるとは、パス上の辺の集合が異なることを指します。

输入格式

入力は以下の形式で標準入力から与えられる。

L L

输出格式

1 1 行目には、構成したグラフの頂点数 N N と辺数 M M を出力せよ。 続く M M 行のうちの i i 行目には、3 3 つの整数 ui,vi,wi u_i,v_i,w_i を出力せよ。これらはそれぞれ、i i 本目の辺の始点、i i 本目の辺の終点、i i 本目の辺の長さを表す。 解が複数考えられる場合、どれを出力してもよい。

题目大意

给你一个数 LL,构造一个有向图使得从 11nn 恰好有 LL 条路径且路径长度恰好为 00L1L - 1。边有边权。点数小于等于 2020,边数小于等于 6060

4
8 10
1 2 0
2 3 0
3 4 0
1 5 0
2 6 0
3 7 0
4 8 0
5 6 1
6 7 1
7 8 1
5
5 7
1 2 0
2 3 1
3 4 0
4 5 0
2 4 0
1 3 3
3 5 1

提示

制約

  • 2  L  106 2\ \leq\ L\ \leq\ 10^6
  • L L は整数である

Sample Explanation 1

出力例のグラフには 頂点 1 1 から N=8 N=8 への 4 4 本のパスがあり、 - パス 1 1 2 2 3 3 4 4 8 8 の長さは 0 0 - パス 1 1 2 2 3 3 7 7 8 8 の長さは 1 1 - パス 1 1 2 2 6 6 7 7 8 8 の長さは 2 2 - パス 1 1 5 5 6 6 7 7 8 8 の長さは 3 3 となります。これ以外にも、正答として認められる出力があります。