贪心 Codeforces Round #301 (Div. 2) B. School Marks
题目传送门
1 /* 2 贪心:首先要注意,y是中位数的要求;先把其他的都设置为1,那么最多有(n-1)/2个比y小的,cnt记录比y小的个数 3 num1是输出的1的个数,numy是除此之外的数都为y,此时的numy是最少需要的,这样才可能中位数大于等于y 4 */ 5 #include <cstdio> 6 #include <iostream> 7 #include <algorithm> 8 #include <cstring> 9 using namespace std; 10 11 const int MAXN = 1e3 + 10; 12 const int INF = 0x3f3f3f3f; 13 int a[MAXN]; 14 15 int main(void) //Codeforces Round #301 (Div. 2) B. School Marks 16 { 17 //freopen ("B.in", "r", stdin); 18 19 int n, k, p, x, y; 20 while (scanf ("%d%d%d%d%d", &n, &k, &p, &x, &y) == 5) 21 { 22 int sum = 0, cnt = 0; 23 for (int i=1; i<=k; ++i) 24 { 25 scanf ("%d", &a[i]); sum += a[i]; 26 if (a[i] < y) cnt++; 27 } 28 29 if (cnt <= n / 2) 30 { 31 int num1 = min (n / 2 - cnt, n - k); 32 int numy = n - k - num1; 33 34 sum += num1 + numy * y; 35 if (sum > x) puts ("-1"); 36 else 37 { 38 for (int i=1; i<=num1; ++i) printf ("%d%c", 1, (numy==0 && i==num1) ? '\n' : ' '); 39 for (int i=1; i<=numy; ++i) printf ("%d%c", y, (i==numy) ? '\n' : ' '); 40 } 41 } 42 else puts ("-1"); 43 } 44 45 return 0; 46 }
转载于:https://www.cnblogs.com/Running-Time/p/4471017.html
贪心 Codeforces Round #301 (Div. 2) B. School Marks相关推荐
- Codeforces Round #301 (Div. 2) B. School Marks 构造/贪心
B. School Marks Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/540/probl ...
- Codeforces Round #301 (Div. 2) B. School Marks
其实是很水的一道bfs题,昨晚比赛的时候没看清题意,漏了一个条件. 1 #include<cstdio> 2 #include<cstring> 3 #include<i ...
- 贪心 Codeforces Round #236 (Div. 2) A. Nuts
题目传送门 1 /* 2 贪心:每一次选取最多的线段,最大能放置nuts,直到放完为止,很贪婪! 3 题目读不懂多读几遍:) 4 */ 5 #include <cstdio> 6 #inc ...
- 贪心 Codeforces Round #191 (Div. 2) A. Flipping Game
题目传送门 1 /* 2 贪心:暴力贪心水水 3 */ 4 #include <cstdio> 5 #include <algorithm> 6 #include <cs ...
- 贪心 Codeforces Round #273 (Div. 2) C. Table Decorations
题目传送门 1 /* 2 贪心:排序后,当a[3] > 2 * (a[1] + a[2]), 可以最多的2个,其他的都是1个,ggr,ggb, ggr... ans = a[1] + a[2]; ...
- 「日常训练」Bad Luck Island(Codeforces Round 301 Div.2 D)
题意与分析(CodeForces 540D) 是一道概率dp题. 不过我没把它当dp做... 我就是凭着概率的直觉写的,还好这题不算难. 这题的重点在于考虑概率:他们喜相逢的概率是多少?考虑超几何分布 ...
- Codeforces Round #301 (Div. 2) C. Ice Cave BFS
C. Ice Cave Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/540/problem/C ...
- 贪心 ---- Codeforces Round #618 (Div. 2)B. Assigning to Classes+贪心[证明过程]
题目链接 题目大意:给你2∗n2*n2∗n个数,将这些数分成2个集合使得两个集合中位数的差值最小 解题思路:我懵了一个结论就是排序之后取中间的两个数然后就ac了 我们先对这些数字从小到大排序 证明:1 ...
- Era 贪心 Codeforces Round #752 (Div. 2)
题意: 给一序列,每次操作是插入一个任意大小的数,求最小操作次数使得序列每个数值小于等于下标 思路: 对于每个值大于下标的数,在它前面填上恰好足够多的1,使值刚好等于下标即可,由于前面的数增加了1也会 ...
最新文章
- 1024,不讲技术,来一套程序员续命操~
- java数据结构教程_Java数据结构
- Spring的异步方法
- BigDecimal 往左移动两位小数_一课研究之“让问题意识成为学生深度学习的钥匙——除数是整数的小数除法例谈”20190830...
- zookeeper centos7 集群部署
- notepad++ 偶数行_C ++程序查找前N个偶数的立方和
- Mysql无法创建外键的原因汇总_查看MySQL创建外键约束失败详细原因的方法
- Exchange Server 2016 独立部署/共存部署 (三)—— 安装Exchange程序
- Perl -- 使用Perl 读取和发送邮件
- BDT在Mac(10.8.3)下找不到libfreetype.6.dylib
- eclipse java 生成api_怎样使用Eclipse在Java中实现自己的API
- dell戴尔服务器错误代码及解决方案2013版
- iOS学习笔记(十五)——数据库操作(SQLite)
- proteus软件安装包8.11
- opencv 安装及配置
- 驱动电路设计(光耦,达林顿管)
- vue路由守卫,路由拦截,导航守卫
- 什么是甘特图?怎么做甘特图?
- DMIS 5.3 编程基本要义
- Oracle报错:不是单组分组函数解决