您当前的位置: 首页 >  ui

*DDL_GzmBlog

暂无认证

  • 1浏览

    0关注

    605博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C. Fruits 对map的映射排序

*DDL_GzmBlog 发布时间:2021-04-28 17:18:58 ,浏览量:1

https://codeforces.com/problemset/problem/12/C

题意:

给你n个价格 m个水果 你可以对水果按照你喜欢的价格标价 问你买完所有水果的最大开销和最小开销

样例: 在这里插入图片描述

思路: 就是将出现次数最多的水果标上最小的价格就可以求最大 同理 求最小 所以我们需要用到Map来处理出现次数

问题: map不好排序,去博客上学了挺久的 it->second的排序,好繁琐没看懂

题解: 我们可以使用idx(下标来) 将map的值映射过来,所以处理如下:

code:

#include 
using namespace std;
const int N  = 110;
map mp;
int n,m;
int num[N] ;
int price[N];

bool cmp(int a,int b)
{
    return a>b;
}
int main()
{
    cin>>n>>m;
    int idx = 1;
    for(int i= 0; i>price[i];
    for(int i=0; i>temp;
        if(!mp[temp])
            mp[temp] = idx++;
        num[mp[temp]] ++;

    }
    sort(price,price+n);
    sort(num+1,num+1+idx,cmp);
    int minn = 0;
    int maxn = 0;
    int k = 0;
    for(int i=1;i            
关注
打赏
1657615554
查看更多评论
0.0385s