306870: CF1264B. Beautiful Sequence

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Beautiful Sequence

题意翻译

给你$a$个$0$, $b$个1, $c$个$2$, $d$个$3$, 要求排成一个长度为 $a+b+c+d$ 的数列,相邻两个差的绝对值为$1$,并输出任一方案。

题目描述

An integer sequence is called beautiful if the difference between any two consecutive numbers is equal to $ 1 $ . More formally, a sequence $ s_1, s_2, \ldots, s_{n} $ is beautiful if $ |s_i - s_{i+1}| = 1 $ for all $ 1 \leq i \leq n - 1 $ . Trans has $ a $ numbers $ 0 $ , $ b $ numbers $ 1 $ , $ c $ numbers $ 2 $ and $ d $ numbers $ 3 $ . He wants to construct a beautiful sequence using all of these $ a + b + c + d $ numbers. However, it turns out to be a non-trivial task, and Trans was not able to do it. Could you please help Trans?

输入输出格式

输入格式


The only input line contains four non-negative integers $ a $ , $ b $ , $ c $ and $ d $ ( $ 0 < a+b+c+d \leq 10^5 $ ).

输出格式


If it is impossible to construct a beautiful sequence satisfying the above constraints, print "NO" (without quotes) in one line. Otherwise, print "YES" (without quotes) in the first line. Then in the second line print $ a + b + c + d $ integers, separated by spaces — a beautiful sequence. There should be $ a $ numbers equal to $ 0 $ , $ b $ numbers equal to $ 1 $ , $ c $ numbers equal to $ 2 $ and $ d $ numbers equal to $ 3 $ . If there are multiple answers, you can print any of them.

输入输出样例

输入样例 #1

2 2 2 1

输出样例 #1

YES
0 1 0 1 2 3 2

输入样例 #2

1 2 3 4

输出样例 #2

NO

输入样例 #3

2 2 2 3

输出样例 #3

NO

说明

In the first test, it is easy to see, that the sequence is beautiful because the difference between any two consecutive numbers is equal to $ 1 $ . Also, there are exactly two numbers, equal to $ 0 $ , $ 1 $ , $ 2 $ and exactly one number, equal to $ 3 $ . It can be proved, that it is impossible to construct beautiful sequences in the second and third tests.

Input

题意翻译

给你$a$个$0$, $b$个1, $c$个$2$, $d$个$3$, 要求排成一个长度为 $a+b+c+d$ 的数列,相邻两个差的绝对值为$1$,并输出任一方案。

加入题单

上一题 下一题 算法标签: