hdu4699-Editor】的更多相关文章

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4699 题意:开始有一个光标,每次有5中操作:1,光标当前位置插入一个数,2,光标当前位置删除一个,3,光标向左移一位,4,光标向右移动一位,5,询问前面的数列的最大前缀和. 由于每次删除的数都是在当前的光标位置,而且询问的前缀和都是在光标前面的位置,因此问题简化了很多,否则要用Splay tree搞了.我们可以直接用一个链表或者两个栈来维护光标以前的最大前缀和,然后直接模拟操作就可以了... //S…
题意:维护一个文本编辑,并且查询最大前缀和. 写了splay,wa了13次 过了之后觉着特傻逼.发现题解两个栈就可以了,光标前后维护两个栈,维护前面的栈的前缀和 和 最大前缀和. 哎,傻逼,太弱了,还是没仔细分析题目的特殊性质. #include <cstdio> #include <cstdlib> #include <cstring> #include <cmath> #include <ctime> #include <cassert…
本题就是两个要点: 1.数据结构的设计.显然可以使用双向链表来做,但是写双向链表的代码复杂度高.其实更好的方法是使用两个对弹的栈来做,而且没必要用STL的栈,就自己开两个数组简单搞一下就好了. 2.最大前缀和的更新.很简单的递推关系,dp[i]=max(dp[i-1],sum[i]),意思是从开头到a[i]的最大前缀和里,要么没有i(即dp[i-1]),要么有i(即sum[i]). #include<iostream> #include<cstdio> #include<cs…
[题解]Editor [HDU4699] 传送: \(Editor\) \([HDU4699]\) [题目描述] 有一个维护整数序列的强大编辑器,初始状态为空,下面提供五种不同的操作,给出的总操作次数 \(m \leqslant 1e6\) . \("I,x":\) 在光标后面添加一个整数 \(x\): \("D":\) 删除光标前面的整数: \([Backspace]\) \("L":\) 光标向左移动一个单位,除非它已在第一个位置: \([←…
浅谈栈:https://www.cnblogs.com/AKMer/p/10278222.html 题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4699 用对顶栈模拟即可.\(stk1\)表示光标之前的数列,\(stk2\)表示光标之后的数列.然后维护一下前缀和以及前缀和的最大值即可. 对于插入,直接往\(stk1\)里扔这个数字然后更新\(sum\)和\(mx\). 对于删除,直接弹栈\(stk1\). 对于左移,弹栈\(stk1\)并把弹出…
Description 这些日子,可可不和卡卡一起玩了,原来可可正废寝忘食的想做一个简单而高效的文本编辑器.你能帮助他吗?为了明确任务目标,可可对“文本编辑器”做了一个抽象的定义:   文本:由0个或多个字符构成的序列.这些字符的ASCII码在闭区间[32, 126]内,也就是说,这些字符均为可见字符或空格.光标:在一段文本中用于指示位置的标记,可以位于文本的第一个字符之前,文本的最后一个字符之后或文本的某两个相邻字符之间.文本编辑器:为一个可以对一段文本和该文本中的一个光标进行如下七条操作的程…
Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3678  Solved: 1380 Description 这些日子,可可不和卡卡一起玩了,原来可可正废寝忘食的想做一个简单而高效的文本编辑器.你能帮助他吗?为了明确任务目标,可可对“文本编辑器”做了一个抽象的定义:   文本:由0个或多个字符构成的序列.这些字符的ASCII码在闭区间[32, 126]内,也就是说,这些字符均为可见字符或空格.光标:在一段文本中用于指示位置的标记,可以位于文本的第一…
官方教程:链接 EditorLayout API:链接 Handles API:链接 1.首先来个Inspector面板Editor的实现 要实现一个组件在Inspector中的Editor功能,首先需要写一个编辑器类: 要点: 1.继承Editor 2.放在Editor文件夹中 3.在类的头部写[CustomEditor(typeof(你要实现编辑的组件的类名))] 4.复写OnInspectorGUI函数(此函数仅在Inspector刷新时自动调用),然后在函数里实现编辑器功能的拓展实现.例…
需求:一般我们在做"国际化"功能时,我们需要properties中文表示方式用unicode表示.eclipse默认properties文件编辑器不方便查看,需要我们查看常常查找unicode编码表. Properties Editor刚好满足了这个需求,不需要用户常常查看unicode编码表,默认直观表示为中文,用户可以通过文件点击右键Unicode表示查看对应的unicode表示的properties文件.当然这只是Properties Editor的一种功能,其他的功能可以自己熟…
Delphi Code Editor 之 编辑器选项 可从Code Editor的右键菜单中选择“Properties”菜单项来查看编辑器选项.也可以从主菜单[Tools | Editor Options…]打开编辑器选项对话框.如下图: 下面分别来讲述各个页面. 1.General页面 这两个页面用于控制编辑器的工作方式.其中包括很多选项. 页面下面的“Editor SpeedSetting”组合框,可从里面选择多种设置,如下图: 如果改变此组合框的设置,上面的“Editor options”…