leetcode925
public class Solution
{
public bool IsLongPressedName(string name, string typed)
{
var list1 = new List<KeyValuePair<char, int>>();
var list2 = new List<KeyValuePair<char, int>>(); int name_len = name.Length;
int typed_len = typed.Length;
if (name_len > typed_len)
{
return false;
}
int con = ;
var last_char = ' ';
for (int i = ; i < name_len - ; i++)
{
var cur_char = name[i];
var next_char = name[i + ];
last_char = next_char;
if (cur_char == next_char)
{
con++;
}
else
{
list1.Add(new KeyValuePair<char, int>(cur_char, con));
con = ;
}
}
list1.Add(new KeyValuePair<char, int>(last_char, con)); con = ;
last_char = ' ';
for (int i = ; i < typed_len - ; i++)
{
var cur_char = typed[i];
var next_char = typed[i + ];
last_char = next_char;
if (cur_char == next_char)
{
con++;
}
else
{
list2.Add(new KeyValuePair<char, int>(cur_char, con));
con = ;
}
}
list2.Add(new KeyValuePair<char, int>(last_char, con));
if (list1.Count > list2.Count)
{
return false;
}
for (int i = ; i < list1.Count; i++)
{
if (list1[i].Key != list2[i].Key || list1[i].Value > list2[i].Value)
{
return false;
}
}
return true;
}
}
leetcode925的更多相关文章
- [Swift]LeetCode925. 长按键入 | Long Pressed Name
Your friend is typing his name into a keyboard. Sometimes, when typing a character c, the key might ...
- Leetcode925.Long Pressed Name长按键入
你的朋友正在使用键盘输入他的名字 name.偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次. 你将会检查键盘输入的字符 typed.如果它对应的可能是你的朋友的名字(其中一 ...
随机推荐
- WPF控件NumericUpDown (转)
WPF控件NumericUpDown示例 (转载请注明出处) 工具:Expression Blend 2 + Visual Studio 2008 语言:C# 框架:.Net Framework 3. ...
- day28 python学习反射 sinstance和issubclass
isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象 判断这个对象是不是这个类,或者是不是这个类的子类的实例化 class Foo( ...
- nyoj 数独
数独 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一 ...
- dongle0
*CLI> -- [dongle0] Trying to connect on /dev/ttyUSB2... 插拔dongle[Jan 13 23:42:20] WARNING[3443]: ...
- django 获取前端获取render模板渲染后的html
function GetProxyServerByGroup(ths, action){ var _html = $.ajax({ url: "/nginx/get_proxy_server ...
- java IO包的其他类
DataInputStream 与 DataOutputStream 记事本默认会查编码表,可能会显示成这样 读取 ByteArrayInputStream 与 ByteArrayOutputStre ...
- 【ActiveMQ入门-10】ActiveMQ学习-通配符+异步接收
通配符介绍: 一般情况下,我们使用层次结构的方式来组织队列,比如A.B.C.D,这样便于归类和管理. 我们也可以使用通配符来配置或是操作多个队列. 通配符有三个: . 用来分隔路径: * 用来匹 ...
- 杂项:GIT (分布式版本控制系统)
ylbtech-杂项:GIT (分布式版本控制系统) Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git的读音为/gɪt/.Git是一个开源的分布式版本控制系统 ...
- 关于跨域读取json数据我的理解
这两天在做关于读取json数据的插件,想用getJSON读取数据: $.getJSON(http://www.xxxx.com/Titles.js, function (data) { console ...
- 设置redis 密码
redis配置密码 1.通过配置文件进行配置 yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy require ...