Atcode B - Colorful Hats(思维)
2024-09-01 07:38:56
题目链接:http://agc016.contest.atcoder.jp/tasks/agc016_b
题解:挺有意思的题目主要还是模拟出最多有几种不可能的情况,要知道ai的差距不能超过1这个想想就知道,然后再好好想一下,想想可能会有点麻烦
聪明的人应该一下就想出来了,反正我想了挺久。
#include <iostream>
#include <cstring>
using namespace std;
const int M = 1e5 + 10;
int a[M];
int main() {
int n;
cin >> n;
for(int i = 1 ; i <= n ; i++) cin >> a[i];
int l = a[1] , r = a[1];
for(int i = 2 ; i <= n ; i++) {
l = min(a[i] , l);
r = max(a[i] , r);
}
if(r - l > 1) cout << "No" << endl;
else {
if(l == r) {
int gg = n - l;
if(gg == 1) cout << "Yes" << endl;
else {
if(n == 1 || gg >= l) cout << "Yes" << endl;
else cout << "No" << endl;
}
}
else {
int cnt1 = 0 , cnt2 = 0;
for(int i = 1 ; i <= n ; i++) {
if(a[i] == l) cnt1++;
if(a[i] == r) cnt2++;
}
if(cnt1 >= r) cout << "No" << endl;
else {
int gg = n - r;
if(gg >= r - cnt1) cout << "Yes" << endl;
else cout << "No" << endl;
}
}
}
return 0;
}
最新文章
- C连接oracle(PROC*C)
- Jersey(1.19.1) - Conditional GETs and Returning 304 (Not Modified) Responses
- Android开发之点击两次Back键退出App
- 思考之spring的ioc
- SharePoint REST api
- 使用idea建立gradle+SSM项目
- cordova.js的坑
- 关于Uncaught SyntaxError: Unexpected token o in JSON at position 1,chrome持续报错的相关解析
- 【软件工程】5.8 黑盒&;白盒测试
- unicode 和 utf-8字符编码的区别
- 转载:Linux操作系统(1.3.1)《深入理解Nginx》(陶辉)
- redis内部数据结构深入浅出
- csv,json格式数据的读写
- Smart/400开发上手4: 调试Cobol代码 (DEBUG with QBATCH)
- [转]Reporting Service部署之访问权限
- HDU 2767 Proving Equivalences(至少增加多少条边使得有向图变成强连通图)
- 关于go1.6使用vendor的坑
- 下拉刷新XListView的简单分析
- 利用X.509证书对XML进行加密和签名
- 递归与分治策略之循环赛日程表Java实现
热门文章
- 【iOS】Apple Mach-O Linker Error Linker command failed with exit code 1
- Code blocks返回错误代码:Process returned -1073741819 (0xC0000005)
- Extjs的textfield的颜色设置和出现的问题笔记
- WPF 打开网页
- excel 导入 下载模板 demo
- 教老婆学Linux运维(一)初识Linux
- Android使用com.google.android.cameraview.CameraView进行拍照
- [转载]windows下mongodb安装与使用整理
- javacv——读取摄像头的图像、截取视频的画面
- Ubuntu 16.04 安装 SVN-Client (RaabitVCS)