tsy

2019ICPC南昌邀请赛网络赛 G.tsy's number (数论)

[亡魂溺海] 提交于 2020-05-03 23:21:23
积性函数+容斥 2019ICPC南昌邀请赛网络赛 G.tsy's number 题意 求$\sum_{i=1}^n\sum_{j=1}^n\sum_{k=1}^n\frac{\phi(i)\phi(j^2)\phi(k^3)}{\phi(i)\phi(j)\phi(k)}\phi(gcd(i,j,k))$ 共T组数据,$T\leq 10000$,$1\leq n \leq 10^7$ 题解 枚举gcd(i,j,k) = d,然后容斥一下 $$ \begin{align*} ans &= \sum_{d=1}^n\phi(d)\sum_{i=1}^{[\frac{n}{d}]}\sum_{j=1}^{[\frac{n}{d}]}\sum_{k=1}^{[\frac{n}{d}]} [gcd(i,j,k)==1]\frac{\phi(i d)\phi((j d)^2)\phi((k d)^3)}{\phi(i d)\phi(j d)\phi(k d)}\ &= \sum_{d=1}^n\phi(d)\sum_{s=1}^{[\frac{n}{d}]}\mu(s)\sum_{i=1}^{[\frac{n}{d s}]}\sum_{j=1}^{[\frac{n}{d s}]}\sum_{k=1}^{[\frac{n}{d s}]} \frac{\phi(i d s)\phi((j d s)

Protocol Informatics (PI项目)【基于网络轨迹的协议逆向工程文献学习】

一笑奈何 提交于 2020-04-27 14:05:54
Protocol Informatics【基于网络轨迹的协议逆向工程文献学习】by tsy 声明: 1) 本报告由博客园 bitpeach 撰写,版权所有,免费转载,请注明出处,并请勿作商业用途。恕作者著作权限制,本页面仅上传图片版本的文献学习文稿。 2) 若本文档内有侵权文字或图片等内容,请联系作者 bitpeach 删除相应部分。 3) 本文档内容涉及Protocol Informatics论文 主题,该论文为协议逆向工程的入门经典之作,非常值得基于网络轨迹的协议逆向工程的学习。 论文标题为《Network Protocol Analysis using Bioinformatics Algorithms》, 学术论文内容见此 。 协议逆向工程中称之为PI项目或PI project, 项目及其python代码地址见此 。 经网友提醒,上述链接失效,请点击 本更新的链接 。旧的网站和代码已经没有了,感慨啊。新的网站和代码想必仍然是作者负责的。 我之前调试旧代码时,会报Numerical库的错误,原因是该库是NumPy的前身,现在NumPy成为当前数据结构的主流标准库。 看到新代码的更新,我很激动,2004年开始,到现在作者原大神终于更新了。 4) 仅仅作为参考用途,抛砖引玉,不作为证据证明用途,请自行取舍,核实引用。 5) 本部分若作者翻译或理解有误,欢迎指正,本人诚恳学习。 <

vue hash模式下微信分享后打开首页,三种完美解决方案

落爺英雄遲暮 提交于 2020-04-24 08:24:19
微信分享功能给我们带来了很大的便利,使得基于微信开发出来的 H5 页面可以很好的通过微信平台进行传播。所以呢,基本上每个基于微信开发的 H5 都会集成微信分享功能。但是,前几天在对接微信分享 API 的时候发现了一个大坑。使用 vue 框架开发的应用,分享出去的链接会被截断: 正常链接: https://hxkj.vip/#/article?article_id=8 分享出去的链接被打开之后变成了: https://hxkj.vip/?from=singlemessage&isappinstalled=0 对,就是这么坑。不仅路由被切掉了,参数也没了。。。。。。 针对以上问题,首先想到的就是网上找方法求救。其中找到一个方法:(本文待分享链接都使用 shareLink 作为变量名) let shareLink = window.location.href.split("#")[0]+"#"+window.location.href.split("#")[1]; // 使用这种方法重新拼接一下当前连接 然而,并没有什么用,该被切还是被切。于是,就诞生了以下三种有效的方法。 1、全局路由里拦截链接 2、前端页面中转,重定向 3、借助后端重定向 一、全局路由里拦截链接 1、在 # 号前面加上 ? 号 经过试验发现,只要在路由的 # 号前面加上 ?号