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;
    }

  • 相关阅读:
    图像的加载与保存
    numpy初学
    深入精通JavaScript插件
    Python图像处理库:Pillow 初级教程
    PIL包的应用
    UIWebView的离线缓存
    UITableView优化技巧
    UIKit Dynamics入门
    CALayer 一些重要属性
    一个Demo展示Storyboard的强大
  • 原文地址:https://www.cnblogs.com/qq-1585047819/p/10482818.html
Copyright © 2011-2022 走看看