嘉兴有哪些做网站的公司,网络营销方式的类型有,安阳论坛网,西宁市解封最新消息Day0
发烧了一晚上没睡着#xff0c;感觉鼻子被打火机烧烤一样难受#xff0c;心情烦躁
早上6点起来吃了个早饭#xff0c;思考能力完全丧失了#xff0c;开始看此花亭奇谭
看了六集#xff0c;准备复习数据结构考试#xff0c;然后秒睡
一睁眼就是下午2点了
挂了个…Day0
发烧了一晚上没睡着感觉鼻子被打火机烧烤一样难受心情烦躁
早上6点起来吃了个早饭思考能力完全丧失了开始看此花亭奇谭
看了六集准备复习数据结构考试然后秒睡
一睁眼就是下午2点了
挂了个毛概课串讲点了个外卖吃完又睡着了
醒来就晚上8点了
然后又点了个外卖复习了三章数据结构
就凌晨2点了睡觉
Day1
740醒被催着上了车精神恍惚
然后开始考试
第一题
第一题就被难到了
分割圆形以为是卡特兰数但又觉得不一样
不给样例题意也不是很清楚啊。。。
随便推了推
首先连接相邻两个点的边外圈肯定得单独拿出来考虑也就是2^n种外圈情况
然后设f[n]表示n边形内部划线不相交的方案数
简单推推得到f[n]2*f[n-1]Σf[i1]*f[n-i1]
f[3]1;f[4]3;.........
也不知道对不对反正这么写了
最后好像是1392可能是错的
第二题
求2^(3^(4^(……^2023)))%2023
扩展欧拉定理
没什么好说的背不到公式了
翻了翻以前的博客 emm……犯了一个扩展欧拉定理的典型错误
没加phi(p)
所以答案好像是869
后面补的代码
#includecstdio
#includecstring
#includealgorithm
using namespace std;
int gcd(int x,int y){return !y?x:gcd(y,x%y);}
int phi(int n)
{int sum0;for(int i1;in;i)if(gcd(i,n)1)sum;return sum;
}
int ksm(int x,int y,int m)
{int ret1;while(y){if(y1)ret1ll*ret*x%m;x1ll*x*x%m;y1;}return ret;
}
int minksm(int x,int y,int m)
{int ret1;while(y){if(y1)retmin(1ll*ret*x,1ll*m);xmin(1ll*x*x,1ll*m);y1;}return ret;
}
const int mod2023;
pairint,bool f(int n,int m)
{if(m1)return pair(1,1);pairint,int pf(n1,phi(m));int bp.first;if(p.second) bphi(m);printf(%d^%d\n,n,b);if(minksm(n,b,m)m)return pair(ksm(n,b,m),1);return pair(ksm(n,b,m),0);
}
int main()
{printf(%d,f(2,2023).first);
}
所以搞了40分钟填空题是一分没得是吧
第三题
把长方形分割成小正方形让小正方形的数量最多
寻找大于2的最小公因数没错是最小
然后直接除一除就结束了
第四题
给出L,R
求xyz算式的数目(Lx,y,zR)
数学题稍微推一推就好
这题极度阴间小心爆你的longlong针对某些特定的写法
第五题
第K小的和
给两个数组AB。
从A、B中各选一个数加起来组成C数组求C数组中第K小的数。
二分答案two-pointers注意边界条件的验证
第六题
相连的边
给出一棵带权树选择相连的三条边让他们的边权和最大。
首先这三条边只可能是一条链或者是菊花图
菊花图直接对每个点的相连的边排序
把树定根后链的情况分两种一种是直链一种是有LCA的链
直链的情况直接枚举每个点向上走三步统计边权
有LCA的情况其实是两种直链的情况加起来一边直链长度是2另一边是1
枚举长度为2的直链即枚举每个点向上走两步然后在爷爷节点选择除去走上来的边的最大邻接边即可
注意细节处理。
第七题
01游戏
题目保证有解
直接爆搜
剪枝很多横竖相连三个不能相同每行的01个数不超过一半算完每行每列用二进制val值去重
从11点10写到11点40
最后时间10*10的全下划线不到0.5s
第八题
求一个字符串中长度为i的本质不同的子串的个数i1~n
应该是SAM板题可惜我背不到了老了啊┭┮﹏┭┮
写了个双哈希n^2logn能过4000都顶天了
第九题
求一棵树中距离为i的简单路径条数(iL~R)
点分治板题可惜我背不到了老了老了
暴力n^2走人居然还有40%
mdlqb出题这么这个样子尽是出板题是吧欺负我退役多年的老同志
第十题
本来只剩20分钟了想着暴力也不是很好写于是想了想正解发现正解不难
状压DPSPFA型转移
f[u][S][hp]表示当前在点u存在怪兽的点的状态为S当前血量为hp
很显然
(u,v)存在时
if(S(1v)) f[v][S-(1v)][hp-cal(S,v)]min(f[u][S][hp]w(u,v))
else f[v][S][hp]min(f[u][S][hp]w(u,v))
然后就利用SPFA转移
最后答案应该是max(f[n-1][……][1~HP])
最后没写完哪怕前面填空题不做也好啊最后留个10~20分钟就搞定了太菜了 总结
总之就是非常菜简单题背不到公式板题背不到板子题目都写不完太菜了。