CF1479C.Continuous City

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Some time ago Homer lived in a beautiful city. There were nn blocks numbered from 11 to nn and mm directed roads between them. Each road had a positive length, and each road went from the block with the smaller index to the block with the larger index. For every two (different) blocks, there was at most one road between them.

Homer discovered that for some two numbers LL and RR the city was (L,R)(L, R) -continuous.

The city is said to be (L,R)(L, R) -continuous, if

  1. all paths from block 11 to block nn are of length between LL and RR (inclusive); and
  2. for every LdRL \leq d \leq R , there is exactly one path from block 11 to block nn whose length is dd .

A path from block uu to block vv is a sequence u=x0x1x2xk=vu = x_0 \to x_1 \to x_2 \to \dots \to x_k = v , where there is a road from block xi1x_{i-1} to block xix_{i} for every 1ik1 \leq i \leq k . The length of a path is the sum of lengths over all roads in the path. Two paths x0x1xkx_0 \to x_1 \to \dots \to x_k and y0y1yly_0 \to y_1 \to \dots \to y_l are different, if klk \neq l or xiyix_i \neq y_i for some 0imin{k,l}0 \leq i \leq \min\{k, l\} .

After moving to another city, Homer only remembers the two special numbers LL and RR but forgets the numbers nn and mm of blocks and roads, respectively, and how blocks are connected by roads. However, he believes the number of blocks should be no larger than 3232 (because the city was small).

As the best friend of Homer, please tell him whether it is possible to find a (L,R)(L, R) -continuous city or not.

输入格式

The single line contains two integers LL and RR ( 1LR1061 \leq L \leq R \leq 10^6 ).

输出格式

If it is impossible to find a (L,R)(L, R) -continuous city within 3232 blocks, print "NO" in a single line.

Otherwise, print "YES" in the first line followed by a description of a (L,R)(L, R) -continuous city.

The second line should contain two integers nn ( 2n322 \leq n \leq 32 ) and mm ( 1mn(n1)21 \leq m \leq \frac {n(n-1)} 2 ), where nn denotes the number of blocks and mm denotes the number of roads.

Then mm lines follow. The ii -th of the mm lines should contain three integers aia_i , bib_i ( 1ai<bin1 \leq a_i < b_i \leq n ) and cic_i ( 1ci1061 \leq c_i \leq 10^6 ) indicating that there is a directed road from block aia_i to block bib_i of length cic_i .

It is required that for every two blocks, there should be no more than 1 road connecting them. That is, for every 1i<jm1 \leq i < j \leq m , either aiaja_i \neq a_j or bibjb_i \neq b_j .

输入输出样例

  • 输入#1

    1 1

    输出#1

    YES
    2 1
    1 2 1
  • 输入#2

    4 6

    输出#2

    YES
    5 6
    1 2 3
    1 3 4
    1 4 5
    2 5 1
    3 5 1
    4 5 1

说明/提示

In the first example there is only one path from block 11 to block n=2n = 2 , and its length is 11 .

In the second example there are three paths from block 11 to block n=5n = 5 , which are 1251 \to 2 \to 5 of length 44 , 1351 \to 3 \to 5 of length 55 and 1451 \to 4 \to 5 of length 66 .

首页