zoukankan      html  css  js  c++  java
  • 天梯赛训练1 7-9 集合相似度

    set的经典应用

    刚开始用map标记一个测试点超时了 ┭┮﹏┭┮;

    用set的find 减少了循环提高了效率

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n,m,zhi;
        set<int> se[55];
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            scanf("%d",&m);
            for(int k=1;k<=m;k++)
            {
                scanf("%d",&zhi);
                se[i].insert(zhi);
            }
        }
        int k,d1,d2;
        scanf("%d",&k);
        for(int i=1;i<=k;i++)
        {
            int sum,num=0;
            scanf("%d%d",&d1,&d2);
            set<int>::iterator it;
            sum=se[d1].size()+se[d2].size();
            for(it=se[d1].begin();it!=se[d1].end();it++)
            {
                if(se[d2].find(*it)!=se[d2].end())
                    num++;
            }
            printf("%.2f% ",num*1.0/(sum-num)*100);
        }
        return 0;
    }

  • 相关阅读:
    servlet异步处理机制
    分析logfilter+session
    java web后台工作原理
    xml的作用
    本学期学习目标 企业级运用和互联网运用的区别
    JAVA EE 思维导图
    第六周
    第五周
    第四周作业
    javaee第三周
  • 原文地址:https://www.cnblogs.com/qq-1585047819/p/10482818.html
Copyright © 2011-2022 走看看