string countAndSay(int n) { string res; ) return res; res = "; ) { int len = res.size(); int i, j; string resTmp; ; i < len; i = j) { char ch = res[i]; ; j < len; ++j) { if (ch != res[j]) break; } resTmp = resTmp + (') + ch; } res = resTmp; } r…
string addBinary(string a, string b) { int alen = a.size(); int blen = b.size(); ) return b; ) return a; ; ; ; string res; || j >= || carry > ) { ) carry += a[i--] - '; ) carry += b[j--] - '; res = ( + ') + res; //res不用逆序处理了 carry = carry / ; } retu…
, INVALID}; int g_status; long long SubStrToInt(const char* str, bool minus) { ; : ; while (*str != '\0') { ') { num = num * + flag * (*str - '); if ((!minus && num > 0x7FFFFFFF) || (minus && num < (signed int)0x80000000)) { num = ;…
解法一:Brute-force int strStr(string haystack, string needle) { int m = haystack.size(); int n = needle.size(); if (!n) ; ; i < m - n + ; ++i) { ; while (j < n) { if (needle[j] == haystack[k]) { j++; k++; } else { break; } } if (j == n) return i; } ; }…
明确:对字符串的操作方法都不会改变原来字符串的值. 1.去掉空格和特殊符号 name.strip() 去掉空格和换行符 name.strip("xx") 去掉某个字符串 name.lstrip() 去掉左边的空格和换行符 name.rstrip() 去掉右边的空格和换行符 2.字符串的搜索和替换 name.count("x") 查找某个字符在字符串里面出现的次数 name.capitalize() 首字母大写 name.center(n,'-') 把字符串放中间,两…
本文是个人对LeetCode中字符串类型题目的总结,纯属个人感悟,若有不妥的地方,欢迎指出. 一.有关数字 1.数转换 题Interger to roman和Roman to integer这两题是罗马数字和整数之间的相互转换,首先要懂得什么是罗马数字以及相应的组数规则.LeetCode的题中给出的数字最大的是3999,.针对第一题有两种解法:第一是列举出罗马数字在个十百千上的各种情况,形成一个二维矩阵,然后对整数不停的取余.除10来确定相应的罗马数字:第二种是先列出罗马数字组成情况,然后通过从…
LeetCode:字符串相加[415] 题目描述 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和. 注意: num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零.你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式. 题目分析 这道题其实很简单,我们要搞清楚手工计算两数之和的流程.两数相加,和如果大于10的话就有进位,进位最高为1,默认为0,该位相加的和应为sum%…
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;}…
BZOJ_4002_[JLOI2015]有意义的字符串_矩阵乘法 Description B 君有两个好朋友,他们叫宁宁和冉冉.有一天,冉冉遇到了一个有趣的题目:输入 b;d;n,求 Input 一行三个整数 b;d;n   Output 一行一个数表示模 7528443412579576937 之后的结果. Sample Input 1 5 9 Sample Output 76 HINT 其中 0<b^2< = d<(b+1)2< = 10^18,n< = 10^18,并且…
LeetCode:字符串的排列[567] 题目描述 给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的排列. 换句话说,第一个字符串的排列之一是第二个字符串的子串. 示例1: 输入: s1 = "ab" s2 = "eidbaooo" 输出: True 解释: s2 包含 s1 的排列之一 ("ba"). 示例2: 输入: s1= "ab" s2 = "eidboaoo" 输出: F…