题意:有$N$只猫,每只猫带着某种颜色的帽子,给出每只猫能看到(即其他$N-1$只猫)的颜色种数$a[i]$,问是否可以构造出合法序列。

首先有一个显而易见的结论,及最大值和最小值相差不超过1

我们考虑最小值的形成,是因为这只猫看不见自己头上的帽子所以会少1

这样又得到了一个结论,看到颜色数目为最小值的猫头上颜色唯一,其他猫头上的颜色至少为2

根据这两个结论,我们就可以做这道题

代码:

 1 #include<iostream>
 2 #include<algorithm>
 3 using namespace std;
 4 int n,num,maxn,minn;
 5 int a[100001];
 6 int main()
 7 {
 8     cin>>n;
 9     for(int i=1;i<=n;i++) cin>>a[i];
10     sort(a+1,a+1+n);
11     minn=a[1],maxn=a[n];
12     if(minn<maxn-1||maxn>=n) {cout<<"No";return 0;}
13     if(maxn==minn)
14     {
15         if(minn+1==n) cout<<"Yes";
16         else
17         {
18             if(minn*2>n) cout<<"No";
19             else cout<<"Yes";
20         }
21         return 0;
22     }
23     for(int i=1;i<=n;i++) if(a[i]==minn) num++;
24     n-=num; maxn-=num;
25     if(minn<num) cout<<"No";
26     else if(maxn*2>n) cout<<"No";
27     else cout<<"Yes";
28     return 0;
29 }

转载于:https://www.cnblogs.com/Slrslr/p/9713374.html

[AGC016B]Colorful Hats相关推荐

  1. AGC016B Colorful Hats(构造)

    题目大意: 给定n和n个数,每个数a[i]代表除了i外序列中颜色不同的数的个数,问能否构造出来这个数列. 比较简单,首先先求出来a数列的最大值Max, 如果有数小于Max-1,那么显然是不存在的 接下 ...

  2. 花里胡哨der惹某第12周周记(习题+感悟)

    ACM菜是原罪 (一)2019 ICPC Asia Nanjing Regional A - Hard Problem 题目描述 Input Output Sample Input Sample Ou ...

  3. make life colorful

    要善于在生活当中发现快乐.寻找快乐.             Make our life more colorful! 转载于:https://www.cnblogs.com/xinqqing83/a ...

  4. hihocoder #1103 : Colorful Lecture Note微软苏州校招笔试 1月10日(字符串处理+栈)

    #1103 : Colorful Lecture Note 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi is writing an algorit ...

  5. AtCoder Beginner Contest 215 G - Colorful Candies 2

    AtCoder Beginner Contest 215 G - Colorful Candies 2 有n个糖果,每个糖果有着一个颜色a[i],每次拿k个糖果期望拿到E(x)个不同颜色的糖果,求出k ...

  6. F - Colorful Tree(LCA,树上差分,离线处理)

    F - Colorful Tree 给定一棵树,边有边权,且每条边有一个颜色,有mmm次操作, 每次给定x,y,u,vx, y, u, vx,y,u,v,如果把颜色为xxx的边,边权修改为yyy,求u ...

  7. Codeforces Round #635 (Div. 2) D. Xenia and Colorful Gems 暴力 + 二分

    传送门 文章目录 题意: 思路: 题意: 给你三个数组a,b,ca,b,ca,b,c,让你从每个数组中选择一个数x,y,zx,y,zx,y,z,使得(x−y)2+(x−z)2+(y−z)2(x-y)^ ...

  8. CF1478A - Nezzar and Colorful Ball(数学)

    CF1478A - Nezzar and Colorful Balls Solution 真不戳,这AAA题真不戳,我直接好家伙. 讲一下我搞了半个小时的垃圾做法 (好吧后来看了看标算好像和我是一样的 ...

  9. AGC012D - Colorful Balls(并查集)

    AGC012D - Colorful Balls Solution 连边题. 找出www最小的球yyy和www最小且颜色和yyy不同的球zzz. yyy向所有colt≠coly,wt+wy≤Ycol ...

最新文章

  1. 独家 | TensorFlow 2.0将把Eager Execution变为默认执行模式,你该转向动态计算图了...
  2. 5g的八大关键指标_你对5G技术标准了解多少(干货)
  3. php和python区别-php与python的区别
  4. coreldraw 双层边框
  5. Java中File类的createNewFile、mkdir与mkdirs区别
  6. js验证input输入框(字母,数字,符号,中文)
  7. Quartz 的SB问题 GetNextValidTimeAfter 输出和输出 时区 不同步,好傻的方法?
  8. node.js https 模块设置请求头等信息
  9. mvc filter 的用法
  10. 编程语言c语言vb,c语言和vb语言哪个比较简单
  11. 如何取消计算机中的0-9,告诉你如何关闭win10易升程序
  12. 档案盒正面标签制作_档案盒标签如何制作
  13. SEO超级外链留痕工具 最新SEO外链一键优化网站源码
  14. win10装win7虚拟机教程
  15. 程序员的“荣”与“耻”之我见
  16. java 删除 指定图片_java删除服务器上指定图片
  17. SQL题库:sqllearning4​—触发器、数据库存储练习
  18. ROS示例----TIAGo教程
  19. Anima2D官方中文使用手册(对应Anima2D1.1.4)
  20. LPDDR4x 的 学习总结(3) - SDRAM基本功能

热门文章

  1. matlab人工势场法三维演示图,运动规划入门 | 5. 白话人工势场法,从原理到Matlab实现...
  2. 战网服务器修改 win8,如何修改战网客户端?修改战网客户端的方法
  3. 台式计算机的速度,台式电脑运行速度慢怎么处理
  4. catia中sew的用法_CATIA超级副本(PowerCopy)使用方法总结 | 坐倚北风
  5. 有序链表转换二叉搜索树Python解法
  6. 华东政法大学教学管理系统_中国科学技术大学1022万采购3包生命科学仪器
  7. AXI_01 《AXI总线系列文章》由来
  8. linux无线网卡消失,linux下wpa/wpa2的无线网卡设置 [暂时还没有证实是否能用]
  9. MySQL登录后显示mariadb_mysql/mariadb学习记录——连接查询(JOIN)
  10. 3dvary灯光材质为什么不亮_装修小白设计家里的灯光,知道这些参数就行了!