A. Fair Game

网友投稿 580 2022-11-09

A. Fair Game

A. Fair Game

n cards (n

different from the number that Petya chose). During the game each player takes all the cards with number he chose. For example, if Petya chose number 5 before the game he will take all cards on which 5 is written and if Vasya chose number 10 before the game he will take all cards on which 10

n

Determine whether Petya and Vasya can choose integer numbers before the game so that the game is fair.

Input

n (2 ≤ n ≤ 100) — number of cards. It is guaranteed that n

n lines contain a sequence of integers a1, a2, ..., an (one integer per line, 1 ≤ ai) — numbers written on the ncards.

Output

NO" (without quotes) in the first line. In this case you should not print anything more.

YES" (without quotes) in the first line. In the second line print two distinct integers — number that Petya should choose and the number that Vasya should choose to make the game fair. If there are several solutions, print any of them.

Examples

input

4 11 27 27 11

output

YES 11 27

input

2 6 6

output

NO

input

6 10 20 30 20 10 20

output

NO

input

6 1 1 2 2 3 3

output

NO

题目大概:

有n张牌,问是否可以分成相同数量的两份,每份都是一样的牌。

代码

#include #include using namespace std;int a[102];int b[102];int main(){ int n; cin>>n; int k=0; for(int i=1;i<=n;i++) { int q; scanf("%d",&q); if(!b[q]){b[q]++;k++;a[k]=q;} else {b[q]++;} } if(k!=2)printf("NO\n"); else { if(b[a[1]]==b[a[2]])printf("YES\n%d %d",a[1],a[2]); else printf("NO\n"); } return 0;}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:asterisk 11 版本增加功能
下一篇:bzoj 3758(分块打表+二进制背包优化)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~