首页 > 其他分享 >P8664 [蓝桥杯 2018 省 A] 付账问题

P8664 [蓝桥杯 2018 省 A] 付账问题

时间:2024-01-24 16:55:07浏览次数:26  
标签:P8664 int mid long cin 蓝桥 2018 include

贪心,把钱最多的放在后面兜底,前面的能付多少付多少

#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string>
#include <math.h>
#define For(i, j, n) for (int i = j; i <= n; ++i)
using namespace std;

const int N = 5e5 + 5;

int n;
long double ans, a[N], s, avg;

int find(long double a[], long double x) // a[]中小于x的最大的数字的下标
{
    int l = 0, r = n;
    while (l < r)
    {
        int mid = l + r + 1 >> 1;
        if (a[mid] < x)
            l = mid;
        else
            r = mid - 1;
    }
    return l;
}

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cin >> n >> s;
    avg = s/(n * 1.0);
    for (int i = 1; i <= n; i++)
    {
        cin >> a[i];
    }
    sort(a + 1, a + n + 1);
    long double t;
    for(int i = 1, j = n; i <= n; i++, j--)
    {
        t = min(a[i], s/(j * 1.0));
        s -= t;
        ans += (t - avg) * (t - avg);
    }
    ans = sqrt(ans / (n*1.0));
    printf("%.4Lf", ans);
    return 0;
}

注意long double要用%Lf

标签:P8664,int,mid,long,cin,蓝桥,2018,include
From: https://www.cnblogs.com/smartljy/p/17985056

相关文章

  • P5015 [NOIP2018 普及组] 标题统计
    1.题目介绍[NOIP2018普及组]标题统计题目背景NOIP2018普及组T1题目描述凯凯刚写了一篇美妙的作文,请问这篇作文的标题中有多少个字符?注意:标题中可能包含大、小写英文字母、数字字符、空格和换行符。统计标题字符数时,空格和换行符不计算在内。输入格式输入文件只有一行,......
  • P4899 [IOI2018] werewolf 狼人 题解
    因为我记忆力不好,经常遇到之前做过的题一下子想不起来,所以打算基本上给每个比较有意思的题写题解,同时造福后代。这是werewolf,它是furry,很可爱题意:一张无向图,点有点权,每次询问从\(u\)到\(v\)的路径中,是否存在一条先走点权大于等于\(L\),再走点权小于等于\(R\)的路径。思路......
  • P4588 [TJOI2018] 数学计算
    题目描述小豆现在有一个数x,初始值为1。小豆有Q次操作,操作有两种类型:1m:将x变为×*m,并输出xmodM。2pos:将x变为x除以第pos次操作所乘的数(保证第pos次操作一定为类型1,对于每一个类型1的操作至多会被除一次),并输出xmodM。输入格式一共有t组输入。对于每一......
  • NOI2018 你的名字。
    您的名字。做法好像和其他题解不太一样。空间少个\(\log\),而且常数小。description给定长度为\(n\)的字符串\(S\)。\(Q\)次询问,第\(t\)次给定字符串\(T_t\)以及正整数\(l,r\in[1,n]\)。每次询问回答\(T_t\)有几个本质不同子串在\(S_{l\dotsr}\)中没有出现过......
  • 2024 蓝桥杯模拟赛 1 (div1) 题解
    A.把字符串小写转换成大写即可#include<bits/stdc++.h>usingnamespacestd;voidsolve(){strings;cin>>s;for(inti=0;i<s.size();i++){if(s[i]>='a'&&s[i]<='z'){s[i]=(char)(s[i]-'a......
  • P8663 [蓝桥杯 2018 省 A] 倍数问题
    又是一道和取模有关的最值问题,因为原问题的规模太大,因此我们可以存储数字取模后的值最极端的情况就就是三个模k同余的数字相加得到答案,因此每个剩余类只要存三个数字即可#include<iostream>#include<stdio.h>#include<algorithm>#include<string>#defineFor(i,j,n)......
  • CVE-2018-19518复现练习
    概述漏洞概述:imap_open函数在传递邮箱名给ssh之前没有正确过滤接收的参数,导致攻击者可以利用-oProxyCommand参数向IMAP服务器发起命令执行恶意代码影响版本:Ubuntu、Debian、RedHat、SUSE环境搭建cd/CVE-2018-19518docker-composeup-d查看网站的组件直接看页面也没有什么......
  • (区间覆盖问题)P5019 [NOIP2018 提高组] 铺设道路和Educational Codeforces Round 158 (
    区间覆盖问题这里EducationalCodeforcesRound158(RatedforDiv.2)b题和[NOIP2018提高组]铺设道路两道典型题目,本质是相同的。这里由于题目多次出现,特此记录。解题思路:首先我们得对区间做划分,那么划分思路可以是从小到大也可以是从大到小的异常点来做划分(我这是由大到......
  • 蓝桥杯准备---练习日志
    2024-01-17利用Cubemx配置usart中Asyn...和Syn....的意思是什么? 使用串口时报错如下------解决办法:添加st官方提供的串口驱动文件 修改底层printf内部的fputs代码---实现printf函数通过串口输出,需要利用LIB什么的......我猜测这个函数是向某个文件流中写......
  • P8651 [蓝桥杯 2017 省 B] 日期问题
    这道题虽然逻辑很简单,但是坑不少,一不留神就WA了要记得去重+排序#include<iostream>#include<stdio.h>#include<algorithm>#include<string>#include<set>#defineFor(i,j,n)for(inti=j;i<=n;++i)usingnamespacestd;stringdate;set<......