上一页 1 2 3 4 5 6 ··· 19 下一页
摘要: K 贪心地先凑出前后端后,中间的部分是本质不同的子序列个数 然后枚举可以重叠的部分,如果可以重叠肯定是回文后缀 有不少细节,比如空串,重叠部分要求后面的能取到 #include<cstdio> #include<iostream> #define int long long #define ULL 阅读全文
posted @ 2024-08-08 22:10 liyishui 阅读(42) 评论(0) 推荐(0)
摘要: E 观察到s(m)<=108,所以r是可以枚举的 但是枚举完后再开根号,时间复杂度为O(T*r*sqrt(n))≈O(100*100*1e6) 赛时还想了一种自认为更优的做法。 考虑枚举i,枚举完i就能得到r,判断是否满足条件(当然,就像分解质因数那样,n/i也要判断) 然后直接这么写会出点小问题, 阅读全文
posted @ 2024-08-08 21:38 liyishui 阅读(55) 评论(0) 推荐(0)
摘要: 1002 提供一种不同于正解的做法 重新定义菊花图: 菊花图首先是一棵树,其次存在一个点,它指向的点的度数都为1,剩下的都是度数为1的点。 那么在枚举删去某个点u时,只需要: 1.给u的邻点的度数-1(deg[u]--) 2.维护当前度数不为1的点的个数(代码里的non1) 3.维护 指向的点都为1 阅读全文
posted @ 2024-08-06 11:46 liyishui 阅读(82) 评论(0) 推荐(0)
摘要: 1005 状压dp,只不过压的是3进制。 模数有坑点,可能模完为0但是方案存在,也要输出。因此多开一个数组表示存不存在。 #include<bits/stdc++.h> using namespace std; const int N=500,K=10,LIM=6e4; const char ch[ 阅读全文
posted @ 2024-08-06 11:41 liyishui 阅读(205) 评论(0) 推荐(0)
摘要: 很神奇的场hh,大家一起坐牢,多好啊! B 找规律,这种题一般都是多模拟几个数据然后猜出来 #include<bits/stdc++.h> using namespace std; inline int read() { int x=0;bool f=1;char ch=getchar(); for 阅读全文
posted @ 2024-08-01 23:00 liyishui 阅读(29) 评论(0) 推荐(0)
摘要: B 显然不能走回头路,如果具体考虑各种情况会很麻烦。 比如箱子在的地方是不是割点,人能不能绕过箱子去到箱子附近..额,总之很麻烦,需要一个通解 那就考虑人先 不经过箱子 走到箱子的邻点的最短距离,可以用一遍bfs解决。 然后再考虑从1号点的某个邻点开始,人拉着箱子怎么走。 可以把人-箱子看成一条有向 阅读全文
posted @ 2024-07-29 11:04 liyishui 阅读(52) 评论(0) 推荐(0)
摘要: 好吧标题党了一回,但我相信有不少人被出题人的那句“手玩一下就知道了”无语住了 像我这种憨憨一旦想偏了就救不回来了,于是困惑了好久,在雨巨的指导下彻底搞懂 (此处大声谢谢雨巨,又有实力又会讲题又认真答疑每一个问题,呜呜呜我永远的姐) 题意简单来说就是定义f(i)为树上i点到其他所有点的距离之和,给定x 阅读全文
posted @ 2024-07-28 17:38 liyishui 阅读(103) 评论(0) 推荐(0)
摘要: 1477A - Nezzar and Board 观察到2x-y可以拆成x+(x-y),现在模拟一下这个过程 发现得到的数可以看成从某个点xj出发,加上若干个两数之间的差的形式。 再考虑一下2x-y的几何意义,发现相当于在数轴上做x关于y的对称点,并且和数的分布位置有关,和具体数值是无关的 接下来有 阅读全文
posted @ 2024-07-26 23:36 liyishui 阅读(23) 评论(0) 推荐(0)
摘要: 打了个爽!今天打得很稳,基本没有罚时,相当优雅的一场 1002 旅行 线段树合并经典题,顺便在过程中做个dp #include<bits/stdc++.h> using namespace std; const int N = 2e5+5; #define mid ((l+r)>>1) typede 阅读全文
posted @ 2024-07-26 19:50 liyishui 阅读(208) 评论(0) 推荐(0)
摘要: 磨合上升期,爽! B 队友做的 #include<bits/stdc++.h> using namespace std; #define int long long inline int read() { int x=0;bool f=1;char ch=getchar(); for(;ch<'0' 阅读全文
posted @ 2024-07-24 11:29 liyishui 阅读(155) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 19 下一页