PAT L2-005. 集合相似度 【stl set】】的更多相关文章

L2-005. 集合相似度 参考博客 #include<cstdio> #include<set> #include<cstdlib> using namespace std; ; set<int> s[maxn]; int n; int main() { while(~scanf("%d", &n)) { int cnt; ; i < n; i++) { if(!s[i].empty())s[i].clear(); sca…
L2-005. 集合相似度 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟…
7-9 集合相似度(25 分) 给定两个整数集合,它们的相似度定义为:N​c​​/N​t​​×100%.其中N​c​​是两个集合都有的不相等整数的个数,N​t​​是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(≤50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(≤10​4​​),是集合中元素的个数:然后跟M个[0,10​9​​]区间内的整数. 之后一行给出一个正整数K(≤2000),随后K行,每…
L2-005. 集合相似度 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟…
L2-005. 集合相似度 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟…
L2-005. 集合相似度 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟…
给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟M个[0, 109]区间内的整数. 之后一行给出一个正整数K(<=2000),随后K行,每行对应一对需要计算相似度的集合的编号(集合从1到N编…
链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805070149828608 题目: 给定两个整数集合,它们的相似度定义为:/.其中N​c​​是两个集合都有的不相等整数的个数,N​t​​是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(≤),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(≤),是集合中元素的个数:然后跟…
给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟M个[0, 109]区间内的整数. 之后一行给出一个正整数K(<=2000),随后K行,每行对应一对需要计算相似度的集合的编号(集合从1到N编…
https://pintia.cn/problem-sets/994805046380707840/problems/994805070149828608 给定两个整数集合,它们的相似度定义为:/.其中N​c​​是两个集合都有的不相等整数的个数,N​t​​是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(≤),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(≤),是集合中元素的个数:然后跟M个[区间内的…
题目链接:点击打开链接 给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟M个[0, 109]区间内的整数. 之后一行给出一个正整数K(<=2000),随后K行,每行对应一对需要计算相似度的集…
set的应用 题目链接 题解 有点像集合的交并操作,直接利用set进行处理,因为set有去重的功能,而且set是利用红黑树实现的,查找速度快O(logN). 代码如下: #include<cstdio> #include<set> #include<cstdlib> using namespace std; const int maxn = 55; set<int> s[maxn]; int n; int main() { while(~scanf(&quo…
题目链接 https://www.patest.cn/contests/gplt/L2-005 思路 因为集合中的元素 是不重复的 所以用SET 来保存 集合 然后最后 查找一下 两个集合中共有元素 就可以了 AC代码 #include <cstdio> #include <cstring> #include <ctype.h> #include <cstdlib> #include <cmath> #include <climits>…
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805070149828608 题意:求两个集合的相同的不同元素的个数与所有不同元素个数的比值. 思路:直接用STL库里的set就可以解决. AC代码: #include<bits/stdc++.h> using namespace std; ]; int n,m,k,a,b,tmp; int main(){ scanf("%d",&…
给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度. 输入格式: 输入第一行给出一个正整数N(<=50),是集合的个数.随后N行,每行对应一个集合.每个集合首先给出一个正整数M(<=104),是集合中元素的个数:然后跟M个[0, 109]区间内的整数. 之后一行给出一个正整数K(<=2000),随后K行,每行对应一对需要计算相似度的集合的编号(集合从1到N编…
题目链接:https://www.patest.cn/contests/gplt/L2-005 这个题理解是个大问题啊,“给定两个整数集合,它们的相似度定义为:Nc/Nt*100%.其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数.你的任务就是计算任意一对给定集合的相似度.”  理解了很久,用set来去重. #include <iostream> #include <cstdio> #include <algorithm> #includ…
Intro 简单整理了一些关于 C++ STL 的注意点. 虽然大多数东西可以手写不过某些东西最好少造轮子,善用 STL 可以节约很多考场时间,简化实现. 当然是时空限制和功能足够的前提下. Tips 开 bool 数组是如果发现空间不是很对可以考虑 std::bitset 或 std::vector<bool>.不过仅仅是单次访问 std::bitset 没有 bool 数组快. 常数较大的一些 STL 容器:std::stack/std::queue/std::deque/std::lis…
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAzwAAAIRCAIAAAAA0S/lAAAgAElEQVR4nO3dzass133v//xPNTszDU…
https://www.patest.cn/contests/gplt/L2-005 题解:直接set的count函数 坑 :要用容斥原理算两个集合的并,否则超时.(我还以为要打表呢) #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <vector> #include <cmath> #include <cs…
题目如下: 这题主要用来练习stl的使用,是一道比较简单的题目 AC代码如下 #include<iostream> #include<cmath> #include<map> #include<cstring> #include<string> #include<set> #include<unordered_set> using namespace std; unordered_set<int> s[55];…
题目链接 https://www.patest.cn/contests/gplt/L1-043 思路 将每一次 借出和归还 都用 MAP 标记 如果归还的时候 已经被标记过了 那么 ANS ++ 并且 TIME 也加上相应时间 最后 算一下平均时间 要四舍五入 AC代码 #include <iostream> #include <cstdio> #include <algorithm> #include <cmath> #include <deque&…
此文章同步发布在我的CSDN上:https://blog.csdn.net/weixin_44385565/article/details/90041078   1112 Stucked Keyboard (20 分)   On a broken keyboard, some of the keys are always stucked. So when you type some sentences, the characters corresponding to those keys wil…
代码: #include<cstdio> #include<iostream> #include<cmath> using namespace std; double a[100000]; int main() { int n; double s; while(scanf("%d",&n)==1) { s=0; for(int i=0; i<n; i++) { scanf("%lf",&a[i]); s+=a…
题目意思:求N个给定整数的均方差. 求平均值需要先转化为double类型,如果没转化会损失精度,造成错误. 代码如下: #include<iostream> #include<cmath> using namespace std; int n; int a[10005]; int main() { cin>>n; int sum=0; for(int i=1;i<=n;i++) { cin>>a[i]; sum+=a[i]; } double avg=…
c++ stl集合set介绍 c++ stl集合(Set)是一种包含已排序对象的关联容器.set/multiset会根据待定的排序准则,自动将元素排序.两者不同在于前者不允许元素重复,而后者允许. 1) 不能直接改变元素值,因为那样会打乱原本正确的顺序,要改变元素值必须先删除旧元素,则插入新元素 2) 不提供直接存取元素的任何操作函数,只能通过迭代器进行间接存取,而且从迭代器角度来看,元素值是常数 3) 元素比较动作只能用于型别相同的容器(即元素和排序准则必须相同) set模板原型://Key为…
两种集合类的复杂度分析 在[6.1]节与[6.2]节中分别以二分搜索树和链表作为底层实现了集合Set,在本节就两种集合类的复杂度分析进行分析:测试内容:6.1节与6.2节中使用的书籍.测试方法:测试两种集合类查找单词所用的时间 //创建一个测试方法 Set<String> set:他们可以是实现了该接口的LinkedListSet和BSTSet对象 private static double testSet(Set<String> set, String filename) { /…
这四道题来自 13 年 08 月 30 的 PAT 测试. 代码量不大,思路也比较直接.不过第一题的处理逻辑不太清晰,需要好好把握.稍有不慎就掉进坑里了(很多人被这道 20'的题坑了一个多小时心慌意乱我会乱说-,-?). PAT advanced level 全部源码:请戳 1061. Dating (20) 题意 题意比较模糊,需要仔细对照 Sample 的数据理清思路.给定四个字符串,每个不超过 60 个字符,不含空格.要求从中找到符合如下规定的三个字符(或者它们的位置),并转化成一个时间的…
本文为PAT甲级分类汇编系列文章. 集合.散列.数学.算法,这几类的题目都比较少,放到一起讲. 题号 标题 分数 大意 类型 1063 Set Similarity 25 集合相似度 集合 1067 Sort with Swap(0, i) 25 通过与0号元素交换来排序 数学 1068 Find More Coins 30 子集和问题 算法 1070 Mooncake 25 背包问题 算法 1078 Hashing 25 散列 散列 1085 Perfect Sequence 25 符合约束的…
今天开个坑,分类整理PAT甲级题目(https://pintia.cn/problem-sets/994805342720868352/problems/type/7)中1051~1100部分.语言是modern C++. 为什么要整理呢,因为我2019年9月要考PAT甲级,虽然是第一次考,虽然只学了数据结构(https://mooc.study.163.com/course/1000033001?tid=2402970002#/info),但我要冲着高分(2019年9月8日更新:满分)去. 下…
L2-001 紧急救援 题意:就是给你一张n<500的图:让你求最短路径,最短路条数,以及路径: 做法,先用dijkstra求最短路,然后dfs找最短路条数,以及点权的最大值: 一般dfs不就可以解决这个问题吗,像n皇后求次数,注意回溯即可: 那如何dfs确定这条路是最短路径呢?贪心思想,枚举每一个邻居,如果满足   dis[y.v]==dis[x]+y.w 说明当前邻居 通过这个点可以一直是最短路径,这样dfs下去,如果碰到d就return掉: 主要是没有想到用dfs求最短路径条数,然后注意回…