• CF540 B 贪心


    坑在B题是常态,弱智的日常。

    是找中位数不是平均值。

    慌了,乱写了

    出了一塌糊涂的ZZ代码

    特记一下

    /** @Date    : 2017-08-27 17:25:11
      * @FileName: B.cpp
      * @Platform: Windows
      * @Author  : Lweleth (SoungEarlf@gmail.com)
      * @Link    : https://github.com/
      * @Version : $Id$
      */
    #include <bits/stdc++.h>
    #define LL long long
    #define PII pair<int ,int>
    #define MP(x, y) make_pair((x),(y))
    #define fi first
    #define se second
    #define PB(x) push_back((x))
    #define MMG(x) memset((x), -1,sizeof(x))
    #define MMF(x) memset((x),0,sizeof(x))
    #define MMI(x) memset((x), INF, sizeof(x))
    using namespace std;
    
    const int INF = 0x3f3f3f3f;
    const int N = 1e5+20;
    const double eps = 1e-8;
    
    vector<int>q;
    int main()
    {
    	int n, k, p, x, y;
    	while(cin >> n >> k >> p >> x >> y)
    	{
    		q.clear();
    		int rec = 0;
    		int ma = 0;
    		int mi = 0;
    		int cnt1 = 0;
    		int cnt2 = 0;
    		int flag = 0;
    		for(int i = 0; i < k; i++)
    		{
    			int t;
    			scanf("%d", &t);
    			if(t >= y)
    			{
    				if(cnt2 == (n+1)/2)
    					cnt1++;
    				else cnt2++;
    			}
    			else 
    			{
    				if(cnt1 == n/2)
    					cnt2++, flag = 1;
    				else cnt1++;
    			}
    			rec += t;
    		}
    
    		if(rec + n/2 - cnt1 + ((n + 1) / 2 - cnt2)*y > x || flag)
    		{
    			printf("-1
    ");
    			continue;
    		}
    		for(int i = 0; i < (n/2) - cnt1; i++)
    			rec+=1, q.PB(1);
    		for(int i = 0; i < (n + 1) / 2 - cnt2; i++)
    			rec+=y, q.PB(y);
    		if(rec > x)
    		{
    			printf("-1
    ");
    			continue;
    		}
    		for(auto i:q)
    			printf("%d ", i);
    		printf("
    ");
    	}
    
        return 0;
    }
    
  • 相关阅读:
    bash 中的 ; && 与|| 的作用
    远程root用户无法登陆
    MySQL5.6主从同步(热备份)
    进程之间的通信方式
    远程连接openGuass配置
    openGuass1.1.0部署
    Go同步原语
    spring boot集成activiti6
    解决默认的jackson序列化循环引用的问题
    spring boot集成websocket
  • 原文地址:https://www.cnblogs.com/Yumesenya/p/7449963.html
Copyright © 2020-2023  润新知