zoukankan      html  css  js  c++  java
  • 洛谷P1090 合并果子

    合并果子

    题目链接

    这个只能用于结构体中

    struct item
    {
    	int val;
    	friend bool operator < (item a,item b)
            {
    		return a.val > b.val;
    	}
    };
    

    一定要记得加这句话不然循环就出不来了

    if(q.empty()) break;
    

    AC代码如下:

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<queue>
    #include<algorithm>
    #define MAXN 10010
    using namespace std;
    int G[MAXN];
    struct item{
    	int val;
    	friend bool operator < (item a,item b){
    		return a.val > b.val;
    	}
    };
    //priority_queue<int,vector<int>,greater<int> >q; 
    priority_queue<item> q; 
    int main()
    {
        int n;
        scanf("%d",&n);
       
        for(int i=0;i<n;i++)
        {
            scanf("%d",&G[i]);
            item t;
            t.val = G[i];
            q.push(t);
        }
        int cur=0;
        while(!q.empty())
        {
            int num=0;
            num=num+q.top().val;
            q.pop();
            num=num+q.top().val;
            q.pop();
            cur=cur+num;
            item t;
            t.val =num;
            if(q.empty()) break;
    		q.push(t);
        }
        printf("%d",cur);
        return 0;
    }
    
  • 相关阅读:
    4.18下午
    4.18上午
    2017.5.10-afternoon
    2017.5.9-afternoon
    2017.5.10-morning
    2017.5.9-morning
    2017.5.8-afternoon
    2017.5.8-morning
    2017.5.5-afternoon
    2017.5.5-morning
  • 原文地址:https://www.cnblogs.com/LITTLESUNwl/p/10715782.html
Copyright © 2011-2022 走看看