6-4 破碎的键盘 uva11988
基础的数组链表
用cur标记光标之前的 用last标记最后的十分巧妙
数组开的不够大会引起RE!!
next[0]=0;这使得最后一项所指的为0
核心语句:
next[i]=next[cur]
next[cur]=i
当为正常顺序时
第一句 :把当前指向 最后一项(0) 再把前一项(cur)指向当前!!!
#include<cstring>
#include<cstdio>
using namespace std; int main()
{
int next[];char s[];
while(==scanf("%s",s+))
{ int len=strlen(s+);
int cur,last;
cur=last=;
next[]=; for(int i=;i<=len;i++)
{
char ch=s[i];
if(ch=='[')cur=;
else if(ch==']')cur=last;
else
{
next[i]=next[cur];
next[cur]=i;
if(last==cur)last=i;
cur=i; } } for(int i=next[];i!=;i=next[i])
printf("%c",s[i]);
printf("\n"); } return ;
}
6-4 破碎的键盘 uva11988的更多相关文章
- UVa 11998 破碎的键盘(数组实现链表)
题意: 输入一行字符,其中包含'[' 和 ‘]’, 意思为键盘上的home 和 end 键, 然后模拟字符在键盘上输入. 输入一行最终的结果 分析: 用数组模拟一个链表, 在链表的头尾插入字母然后输出 ...
- B - Broken Keyboard (a.k.a. Beiju Text) 数组模拟链表
You're typing a long text with a broken keyboard. Well it's not so badly broken. The only problem wi ...
- UVa11988 Broken Keyboard 损坏的键盘【list】
题目链接:https://vjudge.net/problem/UVA-11988 题目大意: 键盘的home键和end键出现了问题. 在输入一段文本时,home键或end键可能会自动被按下,home ...
- 6_4 破损的键盘(UVa11988)<链表>
你用了一个有点坏掉的键盘打字,该键盘会自动按下”Home”键与“End”键,直到打完整个内容以前,你都没有发现到这个问题.本题给定键盘输出的字串(包含Home与End),请你输出该字串在屏幕显示的内容 ...
- 【UVA11988】破损的键盘
题目链接 维护一个链表,以及当前位置.head.tail的指针,模拟就行了 #include<iostream> #include<cstring> #include<c ...
- 【做题笔记】UVA11988破损的键盘
本题可以在洛谷评测,但需要绑定账号 首先解释一下:Home键的作用是把光标移动,End键的作用是返回上次按Home键的地方 考虑朴素做法:输入为[时下一次插入在数组最前端,然后元素整体向后:同时令 l ...
- HTML kbd键盘元素
1. 说明 kbd :即Keyboard Input Element(键盘输入元素).表示键盘按键的语义元素,常用于网页上对快捷键.按键说明的场景. 样式规格:内联样式. 为了在页面上突出显示,可以给 ...
- MVVM TextBox的键盘事件
MVVM下RichTextBox的键盘回车事件设置为发送,不是回车 xmlns:i="http://schemas.microsoft.com/expression/2010/interac ...
- android键盘
在应用的开发过程中有不少的情况下会用到自定义键盘,例如支付宝的支付密码的输入,以及类似的场景.android系统给开发者们提供了系统键盘,KeyboardView,其实并不复杂,只是有些开发者不知道罢 ...
随机推荐
- python技巧 列表推导
val = [expression for value in collection if condition] 等价于 val = []for value in collection: if c ...
- php 利用root 权限执行shell脚本
http://blog.csdn.net/lxwxiao/article/details/8513355 也可以指定某个shell文件不需要密码 www-data ALL=(ALL) NOPASSWD ...
- 位运算&,逻辑与and
在python中,0是否 >>> True and True True >>> True and True True >>> 2 and 4 4 ...
- mysql 案例 ~ 瘦身mysql系列(1)
一 简介:这一系列我们要进行如何瘦身mysql 二 目的:通过提高CPU利用率和节约成本,降低数据库容量及I/O负载,从而使数据吞吐率得到显著提高 三 方法: 利用innodb的COMPRESSED ...
- adb不识别设备(手机)的若干情形及解决方法
1.执行adb root 提示adb: unable to connect for root: no devices/emulators found:执行adb devices ,List下无设备 ...
- linux 命令格式
1.命令 选项 参数 选项——短选项: - 多个选项可以合在一起书写 ——长选项:-- 选项是一个word 参数:命令的作用对象 ls -la /etc /opt 2.su swit ...
- 【网络编程4】网络编程基础-ARP响应(ARP欺骗之中间人攻击)
arp欺骗->arp响应 ARP 缓存中毒(ARP欺骗) arp传送原理在于主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址:收到返回消 ...
- Python中的__init__()和__call__()函数
Python中的__init__()和__call__()函数 在Python的class中有一些函数往往具有特殊的意义.__init__()和__call__()就是class很有用的两类特殊的函数 ...
- 005_git专题
一.仓库管理 ➜ gittest git:(master) git config --local user.name "arunguang" ➜ gittest git:(mast ...
- openwrt 中route配置
route配置项默认保存在文件 /etc/config/network 中. 配置route的接口“interface” 使用的协议需要为dhcp才可. config interface 'wan' ...