首页 > 其他分享 >洛谷 P1223 排队接水

洛谷 P1223 排队接水

时间:2023-02-11 14:56:12浏览次数:48  
标签:node 洛谷 int auto 排队 second P1223 include first

原题链接

image

题解

C++存在一种pair类型,并且可以指定first/second的数据类型,所以可以使用它来代替只有两个元素的结构体
利用sort对数据进行排序,将取水时间从小到大排序
为什么要从小到大,简单试一下就可以试出来,比如
当顺序是 10 20 30 ,总花费时间是70秒,而 30 20 10 花费140秒

#include "iostream"
#include "algorithm"
#include "iomanip"
using namespace std;
int main(){
    int n,sum=0,ans=0;
    cin>>n;
    auto node=new pair<int,int>[n];
    for(int i=0;i<n;i++){
        cin>>node[i].first;
        node[i].second=i+1;
    }
    sort(node,node+n,[](auto o,auto p)->bool{
        return  o.first<p.first;
    });
    for(int i=0;i<n-1;i++){
        sum+=node[i].first;
        ans+=sum;
    }
    for(int i=0;i<n;i++){
        cout<<node[i].second<<' ';
    }
    cout<<endl;
    cout<<fixed<<setprecision(2)<<double(ans)/n;
}

标签:node,洛谷,int,auto,排队,second,P1223,include,first
From: https://www.cnblogs.com/ChengMao/p/17111655.html

相关文章

  • 洛谷 P2240 部分背包问题
    原题链接题解这道题是贪心只要按照性价比最高的取一定得到的价值最大性价比就是这堆金币的价值除以重量只需要把这些金币按性价比排序就行了最后在超出和未超出之间......
  • 洛谷 P2014 选课 树形依赖背包
    题目描述在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功......
  • 树形DP依赖背包 洛谷 P2015 二叉苹果树
    题目描述有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点)这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1。我们用一根树枝两端连接的......
  • 种类并查集 洛谷 P2024 食物链
    题目描述动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B,B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道......
  • POJ 3276 Face The Right Way/洛谷P2882 [USACO07MAR]面对正确的方式 反转
    题目描述FarmerJohnhasarrangedhisN(1≤N≤5,000)cowsinarowandmanyofthemarefacingforward,likegoodcows.Someofthemarefacingbackward,th......
  • 小朋友排队
    标题:小朋友排队  n个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。  每个小朋友都有一个不高兴的程度。开......
  • 洛谷 P2412 查单词
    这是一个非常有意思的题……这一个题放在线段树里面显得非常清奇。很多题解并没有用线段树,或者是用的线段树方法很难。因此,这里为初学者献上一份较为简单容易看懂的代码。......
  • 洛谷oj题单【入门2】分支结构-入门难度(Java)
    洛谷oj题单【入门2】分支结构-入门难度(Java)来源:https://www.luogu.com.cn/training/101#problemsP5709【深基2.习6】ApplesPrologue/苹果和虫子importjava.util.Sc......
  • 洛谷P9035 Pont des souvenirs 题解
    题面很简洁,这里不做多说。70pts做法首先考虑到\(a_{n-1}\)和\(a_n\)两项是整个数列\(a\)中的最大的两项,所以若\(a_{n-1}+a_n\)不超过\(k+1\),则数列中任意两项......
  • 洛谷P3865 【模板】ST表
    题目背景这是一道ST表经典题——静态区间最大值请注意最大数据时限只有0.8s,数据强度不低,请务必保证你的每次查询复杂度为 O(1)O(1)题目描述给定一个长度为 NN 的数列,和 ......