pat1063
来源:互联网 发布:网络课程登录入口 编辑:程序博客网 时间:2024/05/21 10:54
这题暴力的话可能有少数几个点是过不了的,考虑到2000次查询,那么而且集合内的数的个数是10000个,基本只能考虑o(n)的比较了,此时最有可能的就是把2个集合排一下序(放到容器里即可),然后2个指针分别从前往后一步步比较,代码如下:
#include<stdio.h>#include<iostream>#include<set>#include<algorithm>using namespace std;set<int>::iterator it1,it2;set<int>cl[51];int main(){int n;while(scanf("%d",&n)!=EOF){int i,j;for(i=1;i<=n;i++){int x,gg;scanf("%d",&gg);for(j=1;j<=gg;j++){scanf("%d",&x);cl[i].insert(x);}}int m;scanf("%d",&m);while(m--){int a,b;scanf("%d%d",&a,&b);int ans=0;for(it1=cl[a].begin(),it2=cl[b].begin();;){if(*it1==*it2){ans++;it1++;it2++;}else if(*it1>*it2)it2++;else it1++;if(it1==cl[a].end()||it2==cl[b].end())break;}printf("%.1f%%\n",100.0*ans/(cl[a].size()+cl[b].size()-ans));}}}
- pat1063
- pat1063 Set Similarity
- pat1063. Set Similarity
- PAT1063 计算谱半径
- PAT1063. 计算谱半径(20)
- 【PAT1063】Set Similarity 求两集合的交集、并集
- 多个路由器连接时设置方法
- paip.提升用户体验----应用程序调用外部字体的应用..
- Silver Cow Party(2013.09.15)(最短路)
- 【C语言】04-常量、变量
- 大端和小端(Big endian and Little endian) 一、大端和小端的问题
- pat1063
- hdu 2089——不要62
- 23,UC(02)
- 归并排序
- 我用 TypeScript 语言的七个月
- linux常用环境变量函数简介
- 24,UC(3)
- SpringMVC整合Shiro
- MySQL的数据库引擎的类型