真心水,也许只有我这样的蒟蒻能做这种题了吧.用STL中的map将所有人的名字映射成一个数字,然后就是并查集的裸题 #include<bits/stdc++.h> using namespace std; map<string,int> mp; ; int n,m; int k; int father[maxn]; string s; string s1,s2; string l1,l2; int get(int x) { if(father[x]!=x) { father[x]=g…
P2256 一中校运会之百米跑 题目背景 在一大堆秀恩爱的**之中,来不及秀恩爱的苏大学神踏着坚定(?)的步伐走向了100米跑的起点.这时苏大学神发现,百米赛跑的参赛同学实在是太多了,连体育老师也忙不过来.这时体育老师发现了身为体育委员的苏大学神,便来找他帮忙.可是苏大学神需要热身,不然跑到一半就会抽(筋).于是他就找到了你...如果你帮助体育老师解决了问题,老师就会给你5个积分. 题目描述 假设一共有N(2<=N<=20000)个参赛选手.(尼玛全校学生都没这么多吧) 老师会告诉你这N个选手…
题目链接 https://www.luogu.org/problemnew/show/P2256 题目背景 在一大堆秀恩爱的**之中,来不及秀恩爱的苏大学神踏着坚定(?)的步伐走向了100米跑的起点.这时苏大学神发现,百米赛跑的参赛同学实在是太多了,连体育老师也忙不过来.这时体育老师发现了身为体育委员的苏大学神,便来找他帮忙.可是苏大学神需要热身,不然跑到一半就会抽(筋).于是他就找到了你...如果你帮助体育老师解决了问题,老师就会给你5个积分. 题目描述 假设一共有N(2<=N<=20000…
题目背景 在一大堆秀恩爱的**之中,来不及秀恩爱的苏大学神踏着坚定(?)的步伐走向了100米跑的起点.这时苏大学神发现,百米赛跑的参赛同学实在是太多了,连体育老师也忙不过来.这时体育老师发现了身为体育委员的苏大学神,便来找他帮忙.可是苏大学神需要热身,不然跑到一半就会抽(筋).于是他就找到了你...如果你帮助体育老师解决了问题,老师就会给你5个积分. 题目描述 假设一共有N(2<=N<=20000)个参赛选手.(尼玛全校学生都没这么多吧) 老师会告诉你这N个选手的名字. 接着会告诉你M(1&l…
思路:首先处理名字,让字符串直接映射唯一一个数字,这就用map<string, int>即可. 然后,直接用并查集 #include<iostream> #include<map> #include<string> using namespace std; ; map<string, int>mm; int fa[maxn]; int find(int x){ if (fa[x] == x)return x; return fa[x] = fin…
----------------------- 题目链接:MIKU --------------------- 我现在发现找BUG的最好方法————喝水 喝一次找一个,喝两次A道题 --------------------------- 好,下面来分析这道题,这道题一看,大家一定就会想到并查集 (不知道并查集是什么?)请自行百度或者是看博客:(链接指向网址未完工) 但是,并查集我们是针对数的,而这道题都是字符串,怎么办呢?就是建立一个结构体来储存名字和编号,当然,这样在查询时就必须要遍历每一个数…
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4834 从点1出发,假设现在在i,点数为sta,则下一步的点数必然不能是sta的因数,所以不会形成环,只需从1直接走,走到n即可. 但是如果这样的话时空复杂度就都是nk,明显不满足题意,而这个时候我们可以想到,每个状态都必然是k的约数,(点数不是k的约数的节点不在路上,可以无视),而约数的个数也就k^0.5个,可以直接用map映射,这样时空复杂度都是n*k^0.5,可以解出答案…
Babelfish DescriptionYou have just moved from Waterloo to a big city. The people here speak an incomprehensible dialect of a foreign language. Fortunately, you have a dictionary to help you understand them.InputInput consists of up to 100,000 diction…
信息交换 (message.cpp) [题目描述] Byteland战火又起,农夫John派他的奶牛潜入敌国获取情报信息. Cow历尽千辛万苦终于将敌国的编码规则总结如下: 1 编码是由大写字母组成的字符串. 2 设定了密字.加密的过程就是把原信息的字母替换成对应密字. 3 一个字母有且仅有一个对应密字,不同字母对应不同密字. 如今,Cow终于获取了敌国发送的一条加密信息和对应的原信息.Cow如下破解密码:扫描原信息,对于原信息中的字母x,找到它在加密信息中的对应大写字母y,且认为y是x的密字.…
filter过滤器 >>> list(filter(None,[0,1,2,True,False])) [1, 2, True] filter的作用就是后面的数据按照前面的表达式运算后,得出为False则去掉,返回所有为True的值. #举例找出0-100所有的奇数 def myfun(x): return x%2 temp=range(100) list(filter(myfun,temp)) #该例子也可以用一行代码结束 list(filter(lambda x:x%2,range(…