Нөлдік сумма


Шешімді жөнелту

Ұпайлар: 100 (partial)
Уақыт шектеуі: 2.0s
Жад шектеуі: 256M

Author:
Problem type
Рұқсат етілген тілдер
Assembly, Awk, Brain****, C, C++, Go, Java, Pascal, Perl, PHP, Python, Sed, Text

Сандар патшалығындағы алхимик сарайының зертханасында ұлы тәжірибеге дайындық жүріп жатыр. Алхимикке \(N\) құты берілді. Әр құтыда энергия мөлшері \(L_i\) мен \(R_i\) аралығында болуы мүмкін.

Бірақ трансмутация рәсімін өткізу үшін, барлық құтыдағы энергияның жалпы мөлшері дәл нөлге тең болуы қажет. Артық та емес, кем де емес — толық тепе-теңдік!

Сіздің міндетіңіз — мына шарттарды орындайтын энергиялар тізбегін \(X_1, X_2, \dots, X_N\) табу:

  • Әр \(i\) үшін: \(L_i \leq X_i \leq R_i\);

  • Жалпы қосынды: \(\sum_{i=1}^N X_i = 0\).

Егер мұндай тізбек бар болса — алхимикке нақты мәндерді көрсетіңіз. Ал егер мүмкін болмаса — оған No деп айтыңыз, апаттың алдын алыңыз.

Енгізу

Бірінші жолда бір бүтін сан \(N\) (\(1 \leq N \leq 2 \cdot 10^5\)) — сандар жұбының саны. Келесі \(N\) жолдың әрқайсысында екі бүтін сан \(L_i\) және \(R_i\) (\(-10^9 \leq L_i \leq R_i \leq 10^9\)) беріледі.

Шығару

Егер шешім жоқ болса, No деп шығарыңыз. Егер шешім бар болса:

  • Бірінші жолға Yes деп шығарыңыз.

  • Екінші жолға \(N\) бүтін саннан тұратын \(X_1, X_2, \dots, X_N\) тізбегін шығарыңыз.

Егер бірнеше шешім болса, олардың кез келгенін шығара аласыз.

Бағалау жүйесі

Тапсырма үш кіші тапсырмадан тұрады:

  • Кіші тапсырма 1 (\(N = 2\), \(-1000 \leq L_i \leq R_i \leq 1000\)): 10 балл.

  • Кіші тапсырма 2 (\(N \leq 7\), \(-5 \leq L_i \leq R_i \leq 5\)): 20 балл.

  • Кіші тапсырма 3 (\(N \leq 200000\), \(-10^9 \leq L_i \leq R_i \leq 10^9\)): 70 балл.

Балл кіші тапсырманың барлық тесттері сәтті өткен жағдайда ғана есептеледі. Мысалдар бағаланбайды.

Мысалдар

Енгізу 1
3
-3 1
3 5
-2 3
Жауап 1
Yes
-1 3 -2
Енгізу 2
3
1 3
1 3
1 3
Жауап 2
No

Пікірлер

Қазіргі уақытта ешқандай пікір жоқ.