摘要: 题面:给定长为n的数组A,有q组询问,每次将A[i]修改为x[i],输出每次修改后A的mex值。 范围:n,q<2E5; A[i],x[i]<1E9 思路:注意到,长度为n的数组,其mex值最大为n。因此,用set维护0~n中没有出现在A中的数,同时用map维护A中各数的现次数。 #include 阅读全文
posted @ 2024-03-08 21:59 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 题面:二维平面上有n个圆,第i个圆的圆心在(x[i],y[i]),半径为r[i],另外给定圆上的点S和T,问从S出发沿着圆是否可以到达T? 范围:n<3E3; x[i],y[i],r[i]<1E9 思路:如果两圆相交,那么可以互相到达,枚举所有圆对,检查两两之间是否相交,用并查集维护连通关系。最后判 阅读全文
posted @ 2024-03-08 21:54 chenfy27 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 题面:给定大小为n的数组A,大小为m的数组B,那么共有n*m个元素和。现给出L对禁用下标(a,b),找一对不在L中的下标(i,j),使用A[i]+B[j]最大,求该最大值。 范围:n,m<=1e5; 1<=L<=min(1e5,nm-1) 思路:先对A和B按从大到小排序,然后让i指向A起始位置,j指 阅读全文
posted @ 2024-03-08 12:37 chenfy27 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 题面:给定两个H行W列的矩阵A和B,每次操作可以交换相邻的行或列,问是否可以将A变成B?如果可以,输出最少操作步数;如果不行,输出-1。 范围:2<=H,W<=5, 1<=A[i][j],B[i][j]<=1e9 思路:数据规模小,直接bfs搜索,如果范围再大点可以用双向bfs优化效率。需要用到哈希 阅读全文
posted @ 2024-03-08 12:27 chenfy27 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题面:给一个长度为2n的字符串T,问是否存在长度为n的字符串S,满足:T = S的前缀 + 整串S逆序 + S的后缀。 范围:n<=1e6 思路:字符串哈希,枚举S的起点逐一判断,如果前i个字符加后n-i个字符组成的长为n的字符串,正好和中间串的逆序相同,则为解。 #include <bits/st 阅读全文
posted @ 2024-03-08 12:18 chenfy27 阅读(7) 评论(0) 推荐(0) 编辑