#L0830. 抓阄分配

抓阄分配

题目背景

学校组织一场抽奖活动,同学们对抽签结果的公平性产生了好奇。

题目描述

有 nn 个人参加抽奖活动,每个人准备了 mm 个纸团,共 nmnm 个纸团中有恰好 kk 个写了记号。所有纸团被打乱后,每个人各抽取 mm 个。

一个人抽到的记号数最多,当且仅当没有人比他抽到更多记号。

请你判断是否可能恰好 oldsymbol{p} 个人抽到最多的记号。如果可能,还需构造一种方案:对每个人 ii,输出他抽到的记号数 xix_i 和非记号数 yiy_i。

形式化地,构造需满足:

  • xi,yi≥0x_i, y_i \ge 0,xi+yi=mx_i + y_i = m
  • ∑i=1nxi=k\displaystyle\sum_{i=1}^{n} x_i = k
  • 有且仅有 oldsymbol{p} 个互不相同的 jj 使 xj=max⁡i=1n{xi}x_j = \max_{i=1}^{n}\{x_i\}

输入格式

一行四个整数 n,m,k,pn, m, k, p。

输出格式

如果不可能,输出一行 NO。

如果可能,第一行输出 YES,接下来 nn 行每行两个整数 xi,yix_i, y_i,表示第 ii 个人抽到的记号数和非记号数。如果有多组解,输出任意一组即可。

样例

3 3 5 2
YES

2 1 2 1 1 2

</p>
3 3 3 2
NO
3 3 5 3
NO

提示

本题答案不唯一,评测使用 Special Judge 校验输出是否合法。

样例解释 #1
样例给出了一种满足条件的构造。
样例解释 #2
不论如何分配,记号的分布只有三种情况:{3,0,0}\{3,0,0\},{2,1,0}\{2,1,0\},{1,1,1}\{1,1,1\},抽到最多记号的人数分别对应 11,11,33。因此无法构造 p=2p=2 的方案。

数据范围

  • Subtask 1 (15分):n,m≤8n,m \le 8
  • Subtask 2 (15分):n,m≤100n,m \le 100
  • Subtask 3 (20分):n,m≤105n,m \le 10^5
  • Subtask 4 (10分):p=1p=1
  • Subtask 5 (40分):无特殊限制

对于所有数据,0≤p≤n≤1050 \le p \le n \le 10^5,1≤n1 \le n,1≤m≤1091 \le m \le 10^9,0≤k≤nm0 \le k \le nm。

难度 普及
通过率 —
尝试 0
通过 0
ID
1558
类型
传统题
Time Limit
1000ms
Memory Limit
250MiB
上传者