last

【题解】Asterisk Substrings Codeforces 1276F 后缀自动机 树链的并

微笑、不失礼 提交于 2020-02-16 02:39:13
第一道独立解决的 Div1F ,嘿嘿,幸好没看题解 把串分为以下几类 不包含 star 的串 太简单,略 star 在最前面的串 略 star 在最后面的串 略 单独一个 star 答案 ++ 单独一个空串 答案 ++ star 在中间的串 注意到,假设 star 的位置是 pos ,实际上相当于选择一个右端点为 pos-1 的串 s1 ,再选择一个左端点为 pos+1 的串 s2 ,问这样的 pair(s1,s2) 有多少个 也就是选两个原串的子串,并且这两个子串要满足上面那个条件,问方案数 对原串的 前 n-2 个字符 建 SAM ,称为 sam 对原串的 后 n-2 个字符倒过来 再建 SAM ,称为 rsam 注意到, SAM 上每个点表示的本质不同子串数量是 len[u] - len[pa[u]] ,其中 len 是点 u 所表示字符串的最长长度, pa 是点 u 在后缀树上的父亲,记这个值为 val[u] 也就是说,问题变成了:枚举 sam 里面的一个点 u ,枚举 rsam 里面的一个点 v ,如果 v 的 end_pos 集合存在一个数字,等于 u 的 end_pos 集合里面的某个数字 +2 ,那么 ans += val[u] * val[v] 考虑 sam 里面的每个点 u ,假设 u 的 end_pos 集合是 {a1, a2, a3, ..., ak}

PHP与大数据开发实践

你说的曾经没有我的故事 提交于 2020-02-15 22:45:20
大数据 是使用工具和技术处理大量和复杂数据集合的术语。能够处理 大量数据的技术 称为MapReduce。 何时使用MapReduce MapReduce特别适合涉及大量数据的问题。它通过将工作分成更小的块,然后可以被多个系统处理。由于MapReduce将一个问题分片并行工作,与传统系统相比,解决方案会更快。 大概有如下场景会应用到MapReduce: 1 计数和统计 2 整理 3 过滤 4 排序 Apache Hadoop 在本文中,我们将使用Apache Hadoop。 开发MapReduce解决方案,推荐使用Hadoop,它已经是事实上的标准,同时也是开源免费的软件。 另外在Amazon,Google和Microsoft等云提供商租用或搭建Hadoop集群。 还有其他多个优点: 可扩展:可以轻松清加新的处理节点,而无需更改一行代码 成本效益:不需要任何专门和奇特的硬件,因为软件在正常的硬件都运行正常 灵活:无模式。可以处理任何数据结构 ,甚至可以组合多个数据源,而不会有很多问题。 容错:如果有节点出现问题,其它节点可以接收它的工作,整个集群继续处理。 另外,Hadoop容器还是支持一种称为“流”的应用程序,它为用户提供了选择用于开发映射器和还原器脚本语言的自由度。 本文中我们将使用PHP做为主开发语言。 Hadoop安装 Apache Hadoop的安装配置超出了本文范围

Java数据结构漫谈-LinkedList

て烟熏妆下的殇ゞ 提交于 2020-02-15 16:10:17
同样是List的数据结构,LinkedList是使用了前后指针,指明节点的方式来表示链表的,这与之前介绍的ArrayList http://www.cnblogs.com/yakovchang/p/java_arraylist.html 中使用数组的方式是截然不同的。LinkedList中的存储节点被称作节点(Node),一个节点的定义如下所示: private static class Node<E> { E item; Node<E> next; Node<E> prev; Node(Node<E> prev, E element, Node<E> next) { this.item = element; this.next = next; this.prev = prev; } } 这是LinkedList的一个内部类,不需要使用LinkedList的程序员关心。 LinkedList正是通过next,prev这两个指针来串联起整个List的。 注意:Node节点在初始化的时候同时指明了初始化的节点的前后节点是什么,所以在之后的代码中,往往没有明显的写明新的节点的前后指针指向了哪里。 在LinkedList本身中仅仅记录了List的开始和结束节点,当然,也记录了size: transient int size = 0; transient Node<E> first;

LeetCode All in One 题目讲解汇总(持续更新中...)

混江龙づ霸主 提交于 2020-02-15 10:42:13
Remove the minimum number of invalid parentheses in order to make the input string valid. Return all possible results. Note: The input string may contain letters other than the parentheses ( and ) . Example 1: Input: "()())()" Output: ["()()()", "(())()"] Example 2: Input: "(a)())()" Output: ["(a)()()", "(a())()"] Example 3: Input: ")(" Output: [""] Credits: Special thanks to @hpplayer for adding this problem and creating all test cases. Subscribe to see which companies asked this question 这道题让移除最少的括号使得给定字符串为一个合法的含有括号的字符串,我们从小数学里就有括号,所以应该对合法的含有括号的字符串并不陌生,字符串中的左右括号数应该相同,而且每个右括号左边一定有其对应的左括号

Mysql + canal + zookeeper环境搭建

一世执手 提交于 2020-02-14 23:19:29
Mysql + canal + zookeeper环境搭建 一、mysql集群搭建 1. mysql基本环境 操作系统: Linux version 2.6.32-431.el6.x86_64 数据库:MySQL Community Server 5.7.20 主节点IP:10.60.81.157 主节点IP:10.60.81.158 从节点IP:10.60.81.159 2. 安装mysql 2.1.官网下载MySQL mysql-5.7.20-1.el6.x86_64.rpm-bundle.tar 2.2. 三个节点都安装: 2.2.1.三个节点查看是否安装mysql rpm -qa | grep mysql rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.x86_64 (有则删除) 2.2.2. 三个节点都安装mysql tar –xvf mysql-5.7.20-1.el6.x86_64.rpm-bundle.tar rpm -ivh mysql-community-common-5.7.20-1.el6.x86_64.rpm rpm -ivh mysql-community-libs-5.7.20-1.el6.x86_64.rpm rpm -ivh mysql-community-client-5.7.20-1.el6.x86_64

ADT队列/FIFO表

怎甘沉沦 提交于 2020-02-14 21:58:05
队列是一种特殊的表,只在表首进行删除,只在表尾进行插入,按照先进先出原则操作(First In First Out),又称为FIFO表; 队列的指针实现代码: #include<cstdio> #include<cstdlib> #include<algorithm> typedef struct node* link; typedef struct node { int element; link next; }Node; typedef struct aque* Queue; typedef struct aque { link front; //队首节点指针 link last; //队尾节点指针 }Aque; Queue QueueInit(Queue Q) { Q->front=Q->last=0; return Q; } int QueueEmpty(Queue Q) { return Q->front==0; } int QueueFull(Queue Q) { //这里个人认为通过指针实现的队列(在现阶段我的使用中)可以不需要判断队列空间是否已满; } int QueueFirst(Queue Q) { return Q->front->element; } int QueueLast(Queue Q) { return Q->last->element; }

JQ选择器

点点圈 提交于 2020-02-14 17:40:54
1.#id 查找ID 为myDIV的元素 <body> <div class="mydiv"><p> I am little D!</p></div> <div class="opl"> <p>小弟</p> </div> <script src="../js/jquery-3.1.0.min.js"></script> <script type="text/javascript"> console.log($(".mydiv")); </script> </body> 2.element 用于搜索的元素 指向DOM节点的标签名 <body> <div>div</div> <div>div2</div> <span>span</span> <script src="../js/jquery-3.1.0.min.js"></script> <script type="text/javascript"> console.log($("div")); </script> </body> 3. .class 获取类 <div class="notMe">div class="notMe"</div> <div class="myClass">div class="myClass"</div> <span class="myClass">span class="myClass"</span>

CSS3选择器之学习笔记

三世轮回 提交于 2020-02-14 05:20:16
首先说first-child与last-child,这两个选择器很容易明白,就是父元素下的第一个子元素和最后一个子元素。而nth-child和nth-last-child则是父元素下指定序号的子元素,甚至第偶数个、奇数个子元素精选样式的制定。 /*选择器写法示例*/ nth-child(n) //正数第n个子元素 nth-last-child(n) //倒数第n个子元素 nth-child(odd) //正数下来所有的第偶数个子元素 nth-last-child(even) //倒数上去的第奇数个子元素 那么nth-of-type与nth-last-of-type呢? 在一个div中有数篇文章,h2与p多次使用的情况要对h2实现奇偶异色,如果使用nth-child或是nth-last-child来实现就会发现一些问题(不提供demo代码,读者可自行编写h2ph2ph2p如此),试验的结果是没有出现奇偶异色,仅仅是奇数的变色了。 这个问题产生的原因是,nth-child选择器在计算子元素是第奇数个元素还是第偶数个元素的时候,是连同父元素中的所有子元素一起计算的。换句话说,”h2:nth-child(odd)”这句话的含义,并不是指“针对div元素中第奇数个h2子元素来使用”,而是指“当div元素中的第奇数个子元素是h2子元素的时候使用。”(demo的话h2,p相互交错

WEB前端使用的CSS3选择器

久未见 提交于 2020-02-14 05:16:31
首先说first-child与last-child,这两个选择器很容易明白,就是父元素下的第一个子元素和最后一个子元素。而nth-child和nth-last-child则是父元素下指定序号的子元素,甚至第偶数个、奇数个子元素精选样式的制定。 /*选择器写法示例*/ nth-child(n) //正数第n个子元素 nth-last-child(n) //倒数第n个子元素 nth-child(odd) //正数下来所有的第偶数个子元素 nth-last-child(even) //倒数上去的第奇数个子元素 那么nth-of-type与nth-last-of-type呢? 在一个div中有数篇文章,h2与p多次使用的情况要对h2实现奇偶异色,如果使用nth-child或是nth-last-child来实现就会发现一 些问题(不提供demo代码,读者可自行编写h2ph2ph2p如此),试验的结果是没有出现奇偶异色,仅仅是奇数的变色了。 这个问题产生的原因是,nth-child选择器在计算子元素是第奇数个元素还是第偶数个元素的时候,是连同父元素中的所有子元素一起计算的。换句话 说,”h2:nth-child(odd)”这句话的含义,并不是指“针对div元素中第奇数个h2子元素来使用”,而是指“当div元素中的第奇数个子 元素是h2子元素的时候使用。”(demo的话h2,p相互交错

nginx常用伪静态设置

六眼飞鱼酱① 提交于 2020-02-13 07:05:17
nginx里使用伪静态是直接在nginx.conf 中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态。 nginx只需要打开nginx.conf配置文件,在server里面写需要的规则即可。 复制代码 代码如下: server { listen 80; server_name bbs.jb51.net; index index.html index.htm index.php; root /home/www/bbs; error_page 404 /404.htm; #配置404错误页面 location ~ .*.(php|php5)?$ { #fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fcgi.conf; } #下面就是伪静态了 location /{ rewrite ^(.*)/equip(d+).html$ $1/index.php?m=content&c=index&a=lists&catid=$2 last; } access_log access_log off; } 然后重启nginx服务器伪静态就生效了,这种维护起来很是不方便我们可以把它写在外部文件如bbs_nginx