ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

PTA L2-021 点赞狂魔

2021-03-14 12:36:18  阅读:239  来源: 互联网

标签:std int vk k2 k1 L2 021 include 点赞狂


// ConsoleApplication62.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#pragma warning(disable:4996)
#include <iostream>
#include <algorithm>
#include <set>
#include <vector>

class K
{
public:
    K() {}
    K(std::string ss, int aa, double bb) :s(ss), a(aa), b(bb) {}
    std::string s;
    int a;
    double b;
};

bool cmp(K k1, K k2)
{
    if (k1.a == k2.a)
        return k1.b > k2.b;
    return k1.a > k2.a;
}

int n;
std::vector<K> vk;

int main()
{
    std::cin >> n;
    for (int i = 0; i < n; i++)
    {
        std::string name;
        int j;
        std::cin >> name >> j;
        std::set<int> s;
        for (int k = 0; k < j; k++)
        {
            int l;
            std::cin >> l;
            s.insert(l);
        }
        int sz = s.size();
        vk.push_back({ name, sz, (double) sz / j });
    }

    std::sort(vk.begin(), vk.end(), cmp);

    for (int i = 0; i < 3; i++)
    {
        if (i < vk.size())
            std::cout << vk[i].s;
        else
            std::cout << "-";
        if (i != 3 - 1)
            printf(" ");
    }
}

 

标签:std,int,vk,k2,k1,L2,021,include,点赞狂
来源: https://www.cnblogs.com/siyu1915/p/14532058.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有