expr命令 对数字的基本计算做比较时,假为0,真为1,特殊符号需要转义。 例:对数字的基本计算 [root@tzPC ~]# expr 2\>5 2>5 [root@tzPC ~]# expr 2 \> 5 0 [root@tzPC ~]# expr 6 \> 5 1 [root@tzPC ~]# ...
分类:
其他好文 时间:
2020-07-15 22:50:13
阅读次数:
227
主要讲一下状数组的建立和逆序对的求解方法 树状数组: 修改和查询的复杂度均为$O(\log n)$相比线段树的系数要少很多。 采用了二进制的方法建树,仅有左儿子而无右儿子. 建树过程: void update(int x,int y){//给x位置加上y while(x<=n){ d[x]+=y;x ...
分类:
编程语言 时间:
2020-07-15 22:44:24
阅读次数:
64
这个方法叫做字符串前缀哈希法- - 先求出来每个前缀的哈希值 问题1:如何来定义某一个前缀的哈希值 把这个字符串看成是一个P进制的数 每一位上的字母的ascii码,就是这一位上的数 最后mod上一个很小的数,就映射到0 ~ Q - 1 这样就可以把一个字符串转换为一个数字 注意事项1: 一般情况下, ...
分类:
其他好文 时间:
2020-07-15 15:57:29
阅读次数:
62
题目链接:http://poj.org/problem?id=2482 给出每个点框定的区域,求区域叠加的最大值,可以通过如下算法: 将每个可行点都标记,记录这些点上的权值,维护一个叶结点是一个权值点的线段树,更新的时候注意,由于所有的点都是可行点,所以右边界要在最后删除,遇到同样的x坐标的,优先叠 ...
分类:
编程语言 时间:
2020-07-15 15:23:49
阅读次数:
68
逆序对目前我所知的有三种解法 首先是最简单的冒泡排序,当每次前面一个数比后面一个数大时就会交换,因此可以用冒泡排序来求逆序对 代码: #include<bits/stdc++.h> using namespace std; int main(){ int n,sum=0; cin>>n; int a ...
分类:
其他好文 时间:
2020-07-14 21:51:19
阅读次数:
65
1025 PAT Ranking (25分) Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test ...
分类:
其他好文 时间:
2020-07-14 17:59:25
阅读次数:
48
地址:https://www.luogu.com.cn/problem/P2670 #include<iostream>int a[105][105]={0}; using namespace std; int main() { int n,m; cin>>n>>m; int i,j; char b ...
分类:
其他好文 时间:
2020-07-13 13:48:41
阅读次数:
64
I do not believe such a quality as chance exists. Every incident that happens must be a link in chain.我不相信有运气这种东西,每件意外发生都有其连锁关系。 电路原理 —— 电路基本概念和电路定律(2 ...
分类:
其他好文 时间:
2020-07-13 13:46:31
阅读次数:
65
可以选俩一样的数,但自己异或自己结果是0,不是最优解 预备知识,啥是异或 暴力做法就是两层for循环枚举所有可能 暴力的思路就是 1:首先选定一个Ai(1 <= i <= n) 2:在A1 ~ An中选择一个数Aj,使得Ai ^ Aj的值最大 突破点在第2步 首先Ai一定小于等于31位,也就是0 < ...
分类:
其他好文 时间:
2020-07-13 09:15:13
阅读次数:
57
再写一个关于线程安全的,很多人都喜欢讨论多线程怎么使用,什么AQS、CAS、对象监视。但是如果线程安全的基本定义没有完全搞清楚的话,多线程用起来还是有点儿可怕的。 什么是线程安全 官方一点儿的说法,多个线程要同时修改一个变量时,要保证一个变量的原子性、可见性、有序性。其实说白了就是,多个线程修改,你 ...
分类:
编程语言 时间:
2020-07-12 20:50:57
阅读次数:
62