CF1355D.Game With Array
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Petya and Vasya are competing with each other in a new interesting game as they always do.
At the beginning of the game Petya has to come up with an array of N positive integers. Sum of all elements in his array should be equal to S. Then Petya has to select an integer K such that 0≤K≤S.
In order to win, Vasya has to find a non-empty subarray in Petya's array such that the sum of all selected elements equals to either K or S−K. Otherwise Vasya loses.
You are given integers N and S. You should determine if Petya can win, considering Vasya plays optimally. If Petya can win, help him to do that.
佩佳和瓦夏像往常一样,正在玩一款新颖有趣的博弈游戏。
游戏开始时,佩佳需要构造一个包含 N 个正整数的数组,该数组所有元素之和必须恰好等于 S。接着,佩佳需选定一个整数 K,满足 0≤K≤S。
为了获胜,瓦夏必须在佩佳的数组中找到一个非空子数组,使得该子数组所有元素之和恰好等于 K 或 S−K;否则瓦夏失败。
现给定整数 N 和 S。你需要判断:在瓦夏采取最优策略的前提下,佩佳是否存在必胜策略。若佩佳能获胜,请帮助他构造出相应的数组和整数 K。
输入格式
The first line contains two integers N and S (1≤N≤S≤106) — the required length of the array and the required sum of its elements.
第一行包含两个整数 N 和 S(1≤N≤S≤106)—— 分别表示数组所需的长度及其元素之和。
输出格式
If Petya can win, print "YES" (without quotes) in the first line. Then print Petya's array in the second line. The array should contain N positive integers with sum equal to S. In the third line print K. If there are many correct answers, you can print any of them.
If Petya can't win, print "NO" (without quotes).
You can print each letter in any register (lowercase or uppercase).
如果佩佳能获胜,则在第一行输出 "YES"(不带引号)。第二行输出佩佳的数组,该数组应包含 N 个正整数,且它们的和等于 S。第三行输出 K。若存在多种正确答案,输出任意一种即可。
如果佩佳无法获胜,则输出 "NO"(不带引号)。
每个字母均可使用任意大小写(小写或大写)。
输入输出样例
输入#1
1 4
输出#1
YES 4 2
输入#2
3 4
输出#2
NO
输入#3
3 8
输出#3
YES 2 1 5 4
输入解题思路,AI测评打分。不知道怎么写?