CentOS7ping通外网以及连接Xshell,winscp的方法

困扰好久的问题在大神的指导下终于被解决了,之前一直尝试修改都不行,今天来缕一缕思路,做个记录。
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

牛客多校3 - Sort the Strings Revision(笛卡尔树+分治)

题目链接:点击查看题目大意:给出一个长度为 n 的数字串 s[ 0 ],每个位置的赋值初始时为 s[ i ] = i ( i ∈ [ 0 , n - 1 ] ),现在有一个长度为 n 的排列 p,和一个长度为 n 的数列 d ,相当于 n 次操作,每次操作需要将第 p[ i ] 个位置的数字变为 d[ i ] ,这样一共能得到 n + 1 个数字串,需要给这 n + 1 个数字按照字典序排序题目分析:显然是不能构造出 n + 1 个串然后排序的,而且数据范围也限制了只能 O( n ) 实现
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

Python数据挖掘处理完整项目及详细解释

对通话、短信以及上网记录的数据来预测风险用户本文代码全部采用jupyter运行先导入相关的包# -*- coding: UTF-8 -*-import pandas as pdimport numpy as npfrom xgboost import XGBClassifierfrom sklearn.ensemble import RandomForestClassifierfrom sklearn import metrics, model_selectionfrom sklearn.
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

程序员究竟能干多少年?

程序员这个职业究竟可以干多少年,在中国这片神奇的土地上,很多人都说只能干到30岁,然后就需要转型,就像《程序员技术练级攻略》这篇文章很多人回复到这种玩法会玩死人的一样。我在很多面试中,问到应聘者未来的规划都能听到好些应聘都说程序员是个青春饭。因为,大多数程序员都认为,编程这个事只能干到30岁,最多35岁吧。每每我听到这样的言论,都让我感到相当的无语,大家都希望能...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

POJ - 1741 Tree(点分治模板题)

题目链接:点击查看题目大意:给出一棵 n 个节点的树,现在定义 dis( x , y ) 为点 x 和点 y 之间的路径长度,现在问 dis ( x , y ) <= k 的点对有多少题目分析:点分治的模板题目,干货博客:https://www.cnblogs.com/PinkRabbit/p/8593080.html自己写的时候写了一堆bug。。提示一下,如果是WA的话可能有点无从下手,但如果用的是链式前向星,还仍然 TLE 的话,大概率是重心的地方出现细节问题了,因为如果重心使用不当,
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

为什么一定要找一个程序员当爸爸

原文看这里:为什么一定要找一个程序员当爸爸~
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

洛谷 - P4197 Peaks(Kruskal重构树+dfs序+主席树)

题目链接:点击查看题目大意:有n座山峰,每座山峰有他的高度 h[ i ] ,有些山峰之间有双向道路相连,共m条路径,每条路径有一个困难值,这个值越大表示越难走。现在有q组询问,每组询问询问从点v开始只经过困难值小于等于x的路径所能到达的山峰中第k高的山峰,如果无解输出−1。题目分析:因为有困难值的限制,所以可以对整个图跑克鲁斯卡尔重构树,如果对点 v 来说,只能走小于等于 x 的路径,可以树上倍增找到权值小于等于 x 的,深度最浅的祖先,显然这个祖先子树中的所有点都是可...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

慎用重载 之 自动装箱带来的麻烦

考虑如下程序:public class Test { public static void main(String[] args) { Set&lt;Integer&gt; set = new TreeSet&lt;Integer&gt;(); List&lt;Integer&gt; list = new ArrayList&lt;Integer&gt;...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

洛谷 - P4768 [NOI2018]归程(Kruskal重构树+树上倍增+最短路)

题目链接:点击查看题目大意:去原网址看吧题目分析:因为是在刷克鲁斯卡尔重构树的题目,所以稍微思考一下就能想出解法了,首先如果水位线固定了,剩下的边组成的最小生成树也是一定的,此时同一个连通块内的点对答案的贡献都是相同的,因为车子可以随便开,这样连通块的贡献,就是连通块内距离点 1 最近的点了这样如何找相应的连通块呢?可以对所有边降序排序,建立克鲁斯卡尔重构树,对于点 x 来说,找到权值大于水位线,且深度最小的祖先,这一步可以用树上倍增来完成,此时这个祖先的子树中的点两两都可以互相达到了,显然包括
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

洛谷 - P4755 Beautiful Pair(笛卡尔树+主席树)

题目链接:点击查看题目大意:给出一个长度为 n 的数列 a,现在一个数对 ( i , j ) 如果满足 a[ i ] * a[ j] <=max( a[ i ] ~ a[ j ]),则称其为美丽的,求出美丽对的数量题目分析:直接统计是比较困难的,但正难则反,我们可以枚举每个数作为最大值时,在其管辖的区间内进行统计,对于某个最大值 i 来说,肯定存在着 l[ i ] 和 r[ i ] ,使得 l[ i ] - 1 是 a[ i ] 左侧首个大于 a[ i ] 的位置,r[ i ] + 1 是..
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

什么是整洁代码

我喜欢优雅和高效的代码。代码逻辑应当直截了当,叫缺陷难以隐藏;尽量减少依赖关系,使之便于维护;依据某种分层战略完善错误处理代码;性能调至最优,省的别人做没规矩的优化,搞出一堆混乱来。整洁的代码只做好一件事。 —–Bjarne Stroustrup...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

代码整洁之道——命名

名副其实 变量、函数或者类的名称应该告诉你,它为什么存在,它做什么事,应该怎么用。如果名称需要注释类补充,那就不算是名副其实。避免误导 避免留下隐藏代码本意的错误命名。做有意义的区分 废话都是冗余。使用读得出来的名称使用可搜索的名称 禁止使用单字母名称和数字常量。添加有意义的语境...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

牛客多校5 - Interval(主席树)

题目链接:点击查看题目大意:给出一个长度为 n 的数列 a ,规定函数 f( l , r ) = a[ l ] & a[ l + 1 ] & ... & a[ r ] ,在规定sets( l , r ) = { f( a , b ) | l <= a <= b <= r } ,对于 q 次询问,每次询问回答 s( l , r )题目分析:根据位运算的性质,可以知道每一位都是相互独立的,再根据与运算的性质,可以知道,当左端点或者右端点的其中一个端点在固定之后.
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

代码整洁之道——函数

短小 函数的第一条规则是要短小。第二条规则还是要短小。20行封顶。每个函数只做一件事。使用描述性的名称 好的名称可以较好的描述函数所做的事。别害怕长名称。函数参数 最理想的函数参数是一,其次是而,应尽量避免三。当函数需要三个以上的参数时,就应该考虑应该封装为类。使用异常替代返回错误码 try/catch代码块丑陋不堪,搞乱了代码结构,应该把try和catch代码块的主体部分抽离出...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

代码整洁之道——注释

注释 不能美化槽糕的代码!
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

牛客 - 牛妹的考验(AC自动机+dp)

题目链接:点击查看题目大意:给出 n 个模式串每个模式串都有一个价值,要求构造出一个长度为 m 的字符串,每个模式串出现一次都会得到一次相应的价值,问如何构造可以使得最终的价值总和最大题目分析:做过一道加强版的题目:https://blog.csdn.net/qq_45458915/article/details/104235188多余的功能删掉就好,有个不太一样的细节就是,上面的那个题目的字符串不允许共用,但这个题目的字符串允许共用,所以需要在 getfail() 函数中稍作修改,也就是说需要
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

CodeForces - 1400F x-prime Substrings(AC自动机+dp)

题目链接:点击查看题目大意:给出一个只由数字 1 ~ 9 组成的字符串 s,首先规定 f( l , r ) 为字符串 s 的区间 [ l , r ] 中的数位和,再规定 x-prime 需要同时满足以下条件:f( l1 , r1 ) = x 不存在 ( l2 , r2 ),使得: l1 <= l2 <= r2 <= r1 f( l2 , r2) != x x 可以被 f( l2 , r2 )整除 问最少删掉字符串 s 中的多少个字母,可以使得整个字符串中不含有 ..
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

每天读点java源码——LinkedList

简介首先看源码里的第一句注释:Doubly-linked list implementation of the {@code List} and {@code Deque} interfaces. Implements all optional list operations, and permits all elements (including {@code null})意思就是L...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

CodeForces - 1400G Mercenaries(容斥原理)

题目链接:点击查看题目大意:给出 n 个区间 [ l[ i ] , r[ i ] ] ,再给出 m 个限制 ( a[ i ] , b[ i] ),求在 n 个区间中能选出多少种子集 S,满足,且任意一条限制都不能同时出现在 S 中题目分析:先不考虑限制,在输入时可以对 n 个区间差分一下,差分数组记为 cnt[ i ] ,然后求一下前缀和,就可以枚举子集的大小 | S | = i,那么当子集大小 | S | 为 i时的种类数就是 C( cnt[ i ] , i)对于一个限制和一个子集共有...
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0

每天读点java源码——ArrayList

读注释
分类: 其他 发布时间: 09-10 11:53 阅读次数: 0