随笔分类 -  总结

摘要:记录一次令我窒息的错误,我在xcode里建项目,有hpp和cpp文件,还有相互调用,hpp里的函数要写inline;我为啥编译报错呢,因为我在hpp文件里在全局定义了一个结构体,然后在调用过程中,它被多次定义,就gg了,我后来把它定义在函数内部就可以了。 阅读全文
posted @ 2020-04-08 09:47 WeiAR 阅读(294) 评论(0) 推荐(0)
摘要:np.set_printoptions(precision=2,suppress=True) 保留两位小数,不用科学计数法表示 阅读全文
posted @ 2020-04-06 20:53 WeiAR 阅读(258) 评论(0) 推荐(0)
摘要:https://vjudge.net/contest/365698#problem/J l[i]表示以a[i]为右端点的为负数的情况,r[i]表示为整数。 转移就是这样: if(a[i]<0){ l[i]=r[i-1]+1; r[i]=l[i-1]; } else{ l[i]=l[i-1]; r[i 阅读全文
posted @ 2020-04-03 20:01 WeiAR 阅读(142) 评论(0) 推荐(0)
摘要:csp 201604-3路径解析一道简单模拟,主要是读入,这题如果会读入就太简单了用stringstreampath="/d1/d2/d3"stringstream ss(path);while(getline(ss,dir,'/'))的结果就是“”//第一次为空,因为上来就是‘/’d1d2d3就是 阅读全文
posted @ 2020-04-03 15:01 WeiAR 阅读(158) 评论(0) 推荐(0)
摘要:这个点的水可以从其他点来,也可以从0号结点来,所以把0号结点当成超级源点,然后跑最小生成树 #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <c 阅读全文
posted @ 2020-03-27 23:01 WeiAR 阅读(289) 评论(0) 推荐(0)
摘要:超妙的树形dp一个递归,一个递推f[i]表示i结点往下走的最远距离,g[i]表示往上走的最远距离f[i]=max(f[j])+i->v;g[i]=max(g[pa],f[e[pa]->n]+e[pa]->v)+i->v; #include <iostream> #include <cstdio> # 阅读全文
posted @ 2020-03-27 22:08 WeiAR 阅读(503) 评论(0) 推荐(0)
摘要:先跑一遍spfa,这样就排除了小于k条边的情况。枚举那k条边中最小的边权,然后让所有的边都减去它,接着跑spfa,然后在加上k*v[i] #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #incl 阅读全文
posted @ 2020-03-25 21:24 WeiAR 阅读(236) 评论(0) 推荐(0)
摘要:zsh终端配置环境变量:commend not found之类的问题,去找相应的bin文件夹里的可执行程序zsh的环境变量都在/etc里的zshrc里面,把类似下面的语句加到zshrc里就大功告成啦哦,不要忘记source ~/.zshrcexport PATH=/Users/war/Library 阅读全文
posted @ 2020-03-24 14:38 WeiAR 阅读(10748) 评论(0) 推荐(0)
摘要:这个是正确路径 /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/ 阅读全文
posted @ 2020-03-23 20:16 WeiAR 阅读(885) 评论(0) 推荐(0)
摘要:https://codeforces.com/contest/1301/problem/B如果填的这个数特别大,显然不优,如果数特别小,也不优,所以它是凸函数,可以二分(整数单峰函数二分模板题 #include <iostream> #include <cstdio> #include <queue 阅读全文
posted @ 2020-03-20 15:45 WeiAR 阅读(267) 评论(0) 推荐(0)
摘要:是一个单调队列优化dp的典型例子。f[i]=min(f[j])+1,从[i-k,i-1]中转移过来,维护单调递增的队列,每次取队首元素+1就好了。转移分两种情况,[0,i]或者[i-k,i]这个区间里全是01交替的,那么你只能选f[i-1]也就是最大的,取队尾元素就可以了;否则取队首。 #inclu 阅读全文
posted @ 2020-03-11 21:33 WeiAR 阅读(107) 评论(0) 推荐(0)
摘要:http://47.95.147.191/contest/6/problem/A这个题气其实是比较巧妙的。如果选了第3个,就不能选2,4。假设3是最大的,如果选2必选4,选2了却不选4那么不如选3.如果最优解是选2,4,但是贪心的时候选了3,怎么弥补呢?把a[3]=a[2]+a[4]-a[3]再放到 阅读全文
posted @ 2020-02-26 20:08 WeiAR 阅读(201) 评论(0) 推荐(0)
摘要:00001111在前i-1个全相等的情况下,对于位置i,如果a[i]!=a[i-1],要么把前i-1个反转,要么把n-(i-1)位置的反转。按位处理,每次从这两个情况里面取最大值。最后从这些最大值里取最小值就是答案 #include <iostream> #include <cstdio> #inc 阅读全文
posted @ 2020-02-11 17:49 WeiAR 阅读(371) 评论(0) 推荐(0)
摘要:CodeForces - 1201B 首先和是偶数,最大的数要小于总和的一半 #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> 阅读全文
posted @ 2020-02-10 19:25 WeiAR 阅读(151) 评论(0) 推荐(0)
摘要:python3 -m pip install PyQt5 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 阅读全文
posted @ 2019-11-04 20:35 WeiAR 阅读(182) 评论(0) 推荐(0)
摘要:P1487 失落的成绩单a[i]=a[i-2]-2.0*a[i-1]+2.0*d;a[2]越大,a[3]越小a[3]越大,a[4]越小所以a[2]越大,a[4]越大,a[3]越小就有了单调性,分奇偶进行二分细节:二分的时候,l不一定为0,1e10为浮点数,eps小点好 阅读全文
posted @ 2019-09-04 17:18 WeiAR 阅读(180) 评论(0) 推荐(0)
摘要:P1627 [CQOI2009]中位数对于只考虑相对大小的情况,考虑离散化,或者转化成1,0,-1,1表示比它打,0表示相等,-1表示比它小这个题就是前缀和统计一下答案 阅读全文
posted @ 2019-08-26 14:52 WeiAR 阅读(185) 评论(0) 推荐(0)
摘要:a^a^a^a是从前向后算,也就是a^(a^3) 阅读全文
posted @ 2019-08-19 19:51 WeiAR 阅读(300) 评论(0) 推荐(0)
摘要:C(n,m)的奇偶性判断奇数:当且仅当(n&m)==m偶数:否则为偶数证明:根据卢卡斯定理,c(n,m)%2=c(n%2,m%2)*c((n>>1),(m>>1))%2;c(0,0)=1c(0,1)=0c(1,0)=1c(1,1)=1也就是只有m当前位为1的时候,n的当前位也必须为1 阅读全文
posted @ 2019-08-19 19:15 WeiAR 阅读(473) 评论(0) 推荐(0)
摘要:主函数由int main()改成signed main() 好处:把int改成long long 的时候不用单独把它改成int了,懂的人都懂(滑稽 阅读全文
posted @ 2019-08-05 16:19 WeiAR 阅读(1461) 评论(0) 推荐(0)