问题标题: 酷町堂:2619 赶牛

0
0
已解决
黄俊博
黄俊博
资深光能
资深光能

/*
5
55 94
56 50
61 31
28 50
73 41

38106
*/
#include<iostream>
#include<algorithm>
using namespace std;

struct cow{
    int t;
    int d;
}a[100001];

bool cmp(const cow & x,const cow & y)
{
    if(x.t!=y.t)return x.t<y.t;
    return x.d>y.d;
}

int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i].t>>a[i].d;
    }
    
    int count=0;
    cout<<"\n\n";
    sort(a+1,a+n+1,cmp);
    
    for(int i=1;i<=n;i++)
    {
        cout<<a[i].t<<" "<<a[i].d<<endl;
    }

    for(int i=1;i<=n-1;i++)
    {
        for(int j=i+1;j<=n;j++)
        {
            count+=a[j].d*(a[i].t*2);
        }
    }
    cout<<count;
    return 0;

2619赶牛

 


0
已采纳
程天瑞
程天瑞
资深守护
资深守护

用ti*di和di*ti排序

0
陈泉宏
陈泉宏
高级守护
高级守护

D+=tim*c[i].d;

tim+=2*c[i].t;

这是核心代码

0
黄俊博
黄俊博
资深光能
资深光能

@贾文卓 @梁锦程 @陆麟瑞 @王星河 

0
0
我要回答